#include<bits/stdc++.h>
using namespace std;
int n,a,b,k[205],kp[205];
long long minsum=11451400;
void dfs(long long sum,long long p)
{
if(p==b)
{
minsum=sum;
return;
}
if(p<1||p>n||sum==minsum||kp[p]==1) return;
kp[p]=1;
dfs(sum+1,p+k[p]);
dfs(sum+1,p-k[p]);
}
int main (void)
{
cin>>n>>a>>b;
for(int i=1;i<=n;i++) cin>>k[i];
dfs(0,a);
if(minsum==11451400) cout<<-1;
else cout<<minsum;
return 0;
}