#include using namespace std; using ll=long long; using ld=double; #define FOR(i,a,b) for(ll i=a;i<(ll)b;++i) #define F(n) FOR(i,0,n) #define FF(n) FOR(j,0,n) #define aa first #define bb second #define PB push_back #define EQ(a,b) (fabs(a-b)<=(fabs(a+b)*EPS)) #define MOD ((ll)(1e9+7)) #define INF (1ll << 40) int main() { ios::sync_with_stdio(0);cin.tie(0); ll n, k; cin >> n >> k; vector a(n); F(n) { cin >> a[i]; } ll bot = 0, top = INF; while (bot < top) { ll mid = (bot+top+1)/2; ll cnt = 0; F(n) { if ((a[i] & mid) >= mid) cnt ++; } if (cnt >= k) bot = mid; else top = mid - 1; } cout << bot << endl; return 0; }