#include #include using namespace std; int main(){ int N, K; cin >> N >> K; vector codes(N); bool status1= false; bool status0[30]; for (int i = 0; i < 30; i++) { status0[i] = false; } vector status(N, &status1); int sum=0; for (int i = 0; i < N; i++) { cin >> codes[i]; } for (int i = 29; i >=0; --i) { int count = 0; for (int j = 0; j < N; ++j) { if(!*status[j]){ if((codes[j]>>i)&1){ count++; } else{ status[j] = status0+i; } } } if(count>= K){ sum+=1<