#include #include using namespace std; using namespace atcoder; using ll=long long; random_device seed; mt19937 rnd(seed()); int main() { ll n,k; cin>>n>>k; vector a(n); for(int i=0;i>a[i]; vector> dicts(30); for(int i=0;i>j)]+=1; } int l=-1,r=(1<<30)-1; while(l+1>j&1)cnt+=dicts[j][(c>>j)^(a[i]>>j)^1]; } } if(cnt/2>=k)r=c; else l=c; } cout<