#include<bits/stdc++.h>
using namespace std;
long long n,m,k,a[210],ans=1e18,minn[210];
void dfs(long long u,long long v,long long s)
{
if(u<1 || u>n)
return ;
if(s>=minn[u])
return ;
if(s>=ans)
return ;
if(u==v)
{
ans=s;
return ;
}
minn[u]=s;
dfs(u+a[u],v,s+1);
dfs(u-a[u],v,s+1);
}
int main()
{
cin>>n>>m>>k;
for(int i=1;i<=n;i++)
cin>>a[i],minn[i]=666666;
dfs(m,k,0);
if(ans!=666666)
cout<<ans;
else
cout<<-1;
return 0;
}