#include <bits/stdc++.h>
using namespace std;
int n,d,b,ans=-1;
int a[500],vis[500];
void dfs(int x,int c){
if(x<=0||c>ans&&ans!=-1||vis[x])return;
if(x==b){
ans=c;
return;
}
vis[x]=1;
dfs(x-a[x],c+1);
dfs(x+a[x],c+1);
vis[x]=0;
}
int main(){
cin>>n>>d>>b;
for(int i=1;i<=n;i++){
cin>>a[i];
}
dfs(d,0);
cout<<ans;
}
再附上一句:这题不仅电梯奇怪,分数也奇怪