#include<bits/stdc++.h>
using namespace std;
int dy[114514];
int A[114514];
bool st[114514];
int a,b,n,sx,sy,sum;
struct node{
int y;
};
bool bfs(){
queue<node> q;
for(int i=1;i<=n;i++){
dy[i]=A[i];
}
node s;
s.y=sy;
q.push(s);
st[s.y]=true;
while(!q.empty()){
node u=q.front();
q.pop();
if(A[u.y]>a) return true;
for(int i=0;i<=1;i++){
node v;
v.y=u.y+dy[i];
if(A[v.y]<a) continue;
if(st[v.y]==true) continue;
q.push(v);
st[v.y]=true;
}
}
return false;
}
int main(){
cin>>n>>a>>b;
for(int i=1;i<=n;i++) cin>>A[i];
for(int i=1;i<=n;i++){
if(A[i]!=b) sum++;
if(A[i]==b) break;
}
if(sum>=0){
cout<<sum;
return 0;
}
cout<<-1;
return 0;
}
求助大佬