#include<bits/stdc++.h>
using namespace std;
int n, st, en, a[2001], d[1001][3],bz[205], i, j, c[2] = {-1,1};
int main()
{
scanf ("%d%d%d",&n,&st,&en);
if (st == en)
{
printf ("%d",0);
return 0;
}
for( i = 0 ; i < n ; i++)
{
scanf ("%d",&a[i]);
}
d[1][1] = st;
d[1][2] = 0;
bz[st] = 1;
i = 0;
j = 1;
while (i<j)
{
i++;
for (int t = 0; t <= 1; t++)
{
int k = d[i][1] + a[d[i][1]] * c[t];
if ( k>=1 && k<=n )
{
j++;
d[j][1] = k;
d[j][2] = d[i][2] + 1;
if (bz[k] == 0)
{
bz[k] = 1;
if (k==en)
{
printf ("%d",d[j][2]);
return 0;
}
}
else j --;
}
}
}
printf("%d",-1);
return 0;
}