NC50341. The XOR Largest Pair
描述
输入描述
第一行一个整数N。
第二行N个整数。
输出描述
一个整数表示答案。
示例1
输入:
5 2 9 5 7 0
输出:
14
C++ 解法, 执行用时: 100ms, 内存消耗: 16616K, 提交时间: 2021-08-19 20:31:44
#include<bits/stdc++.h> using namespace std; const int N = 1e5+5; int t[N*31][2],num[N*31],idx; int ans=0; void insert(int a){ int p=0; for(int i=31;i>=0;i--){ int j=a>>i&1; if(!t[p][j]) t[p][j]=++idx; p=t[p][j]; } num[p]=a; } void query(int a){ int p=0; for(int i=31;i>=0;i--){ int j=a>>i&1; if(t[p][j^1]) p=t[p][j^1]; else p=t[p][j]; } ans=max(ans,a^num[p]); } int main(){ int n;cin >> n; for(int i=1;i<=n;i++){ int a;cin >> a; insert(a); query(a); } cout << ans << endl; }