不知为何全-1,原题
#include <bits/stdc++.h>
using namespace std;
int n,a,b,q[205];
bool vis[205];
int dfs(int i,int num)
{
if (i < 1 || i > n || !vis[i]) return -1;
if (i == b) return num;
vis[i] = 1;
return max(dfs(i + q[i],num + 1),dfs(i - q[i],num + 1));
}
int main()
{
cin >> n >> a >> b;
for (int i = 1;i <= n;i++)
{
cin >> q[i];
}
cout << dfs(a,0);
return 0;
}