#include<bits/stdc++.h>
using namespace std;
int k[210],len[210],d[210];
int main(){
int n,a,b;
cin>>n>>a>>b;
for(int i=1;i<=n;i++){
scanf("%d",&k[i]);
}
memset(len ,63,sizeof(len));
len[a]=0;
int h=1,r=1;
d[1]=a;
while(h<=r);{
int u=d[h];
for(int j=1;j<=2;j++){
int v;
if(j==1)v=u+k[u];
else if(j==2)v=u-k[u];
if(0<v&&v<=n&&len[u]+1<len[v]){
len[v]=len[u]+1;
if(v==b)break;
d[++r]=v;
}
}
h++;
}
if(len[b]>10000)cout<<-1<<endl;
else cout<<len[b]<<endl;
return 0;
}