//1439 1441 1451 2804 2805 2029 1284
#include<bits/stdc++.h>
using namespace std;
int k[300],a,b,n;
deque<int>q;
void bfs(){
int m,r=0;
q.push_back(a);
while(!q.empty()){
r++;
m=q[0];
q.pop_front();
if(m==b){
cout<<r-1;
exit(0);
}
if(m+k[m-1]<=n)q.push_back(m+k[m-1]);
if(m-k[m-1]>0)q.push_back(m-k[m-1]);
//cout<<m<<" ";
}
cout<<-1;
exit(0);
}
int main(){
cin>>n>>a>>b;
for(int i=0;i<n;i++){
cin>>k[i];
}
bfs();
}