#include<cstdlib>
#include<cstring>
using namespace std;
int q[10005][3],s[105],x[10005],n,a,b,head=1,tail=1;
int main()
{
freopen("lift.in","r",stdin);
freopen("lift.out","w",stdout);
memset(s,0xff,sizeof(s));
scanf("%d%d%d",&n,&a,&b);
q[1][1]=a;q[1][2]=0;
for(int i=1;i<=n;i++)
scanf("%d",&x[i]);
while(head<=tail)
{
int x1=q[head][1]+x[q[head][1]];
int x2=q[head][1]-x[q[head][1]];
if(x1<=n)
{
if(s[x1]==-1)
{
s[x1]=q[head][2]+1;
tail++;
q[tail][1]=x1;
q[tail][2]=s[x1];
}
}
if(x2>0)
{
if(s[x2]==-1)
{
s[x2]=q[head][2]+1;
tail++;
q[tail][1]=x2;
q[tail][2]=s[x2];
}
}
if(s[b]>0)
{
printf("%d",s[b]);
return 0;
}
head++;
}
printf("-1");
}
WA60