JAVA_LeetCode 421_Maximum XOR of Two Numbers in an Array 풀이 class Solution { public int findMaximumXOR(int[] nums) { int max = 0; // 지금까지 증명된 비트 집합 int mask = 0; // 현재 비트까지의 prefix를 추출하기 위한 마스크 int candidate = 0; // 1로 만들 수 있다고 가정한 후보 // 최대 31비트 for(int bit = 31; bit >= 0; bit--){ mask |= (1 << bit); // 현재 비트까지 마스크 확장 // 현재 비트까지의 prefix 집합 Set prefixes = new HashSet(); for(int num : nums) prefixes.add(num & mask); candidate = max | (1 << bit); // 이번 비트 비교 // xor 조건에 맞춰서 사용 boolean chk...