#include #include using namespace std; int N; int A[1002],d[1002]; main() { cin>>N>>A[0]; cin>>A[N+1]; for(int i=1;i<=N;i++)cin>>A[i]; queueP; P.push(0); for(int i=1;i<=N+1;i++)d[i]=1e9; while(!P.empty()) { int u=P.front();P.pop(); for(int j=0;j<=N+1;j++)if(d[j]>d[u]+1&&__builtin_popcount(A[j]^A[u])<=1) { d[j]=d[u]+1; P.push(j); } } int ans=d[N+1]; if(ans==(int)1e9)ans=0; cout<