HackerEarth AND choice problem solution YASH PAL, 31 July 2024 In this HackerEarth AND choice, problem-solution M is alone and he has an array a1,a2,…, an. M wants to choose two integers i,j such that i != j, 1 <= i,j <= n and the value ai & aj(bitwise AND) is maximum. What is the maximum value M can get? HackerEarth AND choice problem solution. #include<bits/stdc++.h>using namespace std;bool hv(int x, int b){ return x & (1 << b);}int main(){ ios_base::sync_with_stdio(false);cin.tie(NULL); int n;cin >> n; multiset<int> st; for(int i=0 ; i<n ; i++){ int d;cin >> d; st.insert(d); } for(int bt=30 ; bt>=0 ; bt --){ if(!hv(*st.rbegin(), bt)) continue; auto it = st.rbegin(); it ++; if(!hv(*it, bt)){ int d = *st.rbegin(); st.erase(st.find(d)); d -= (1 << bt); st.insert(d); continue; } while(!hv(*st.begin(), bt)) st.erase(st.begin()); } cout << *st.rbegin() << "n";} Second solution n = int(input())a = list(map(int, input().split()))ans = 0for i in range(29, -1, -1): cnt = 0 ans |= 1 << i for x in a: if ans & x == ans: cnt += 1 if cnt < 2: ans ^= 1 << iprint(ans) coding problems