My issue
My code
#include <bits/stdc++.h>
using namespace std;
bool solve(int idx,int ans,int n,int *a,int b){
if(idx==n)
return ans==b;
if(ans!=INT_MAX&&(ans&a[idx]==b))
return true;
int k=ans&a[idx];
return solve(idx+1,k,n,a,b)||solve(idx+1,ans,n,a,b);
}
int main() {
int t;
cin>>t;
while(t--){
int n,b;
cin>>n>>b;
int a[n];
for(int i=0;i<n;i++)
cin>>a[i];
bool t=solve(0,INT_MAX,n,a,b);
if(t)
cout<<"YES"<<endl;
else cout<<"NO"<<endl;
}
return 0;
}
Problem Link: CS2023_PON Problem - CodeChef