#include<iostream>
using namespace std;
int n,a,b,k[201],l[201]={0},h=0;
int search(int x);
int main()
{
cin>>n>>a>>b;
for(int i=1;i<=n;i++)
{
cin>>k[i];
}
search(a);
return 0;
}
int search(int x)
{
int head=1,tail=1,f[201];
f[head]=x;
l[f[head]]=1;
while(head<=tail)
{
if(f[head]==b)
{
cout<<h<<endl;
return 0;
}
if(f[head]+k[f[head]]>0&&f[head]+k[f[head]]<=n&&l[f[head]+k[f[head]]]==0)
{
tail++;
f[tail]=f[head]+k[f[head]];
l[f[tail]]=1;
}
if(f[head]-k[f[head]]>0&&f[head]-k[f[head]]<=n&&l[f[head]-k[f[head]]]==0)
{
tail++;
f[tail]=f[head]-k[f[head]];
l[f[tail]]=1;
}
head++;
h++;
}
cout<<-1<<endl;
return 0;
}
50分