Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int findMaximumXOR(vector<int>& nums) {
- int mask = 0;
- int test_max = 0;
- int max = 0;
- unordered_set<int> s;
- for(long long i = 30; i >= 0; --i){
- mask |= 1ll << i;
- printf("n"BYTE_TO_BINARY_PATTERN, BYTE_TO_BINARY(mask));
- for(int num : nums){
- s.insert(num & mask);
- }
- test_max = max | 1 << i;
- for(int s_val : s){
- if(s.find(s_val ^ test_max) != s.end()){
- max = test_max;
- break;
- }
- }
- s.clear();
- }
- return max;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement