//异或运算符 ⊕ 在编写程序时可以用 ^ 直接运算
#include <bits/stdc++.h>
using namespace std;
int main()
{
int t; cin>>t;
while(t--)
{
int n; cin>>n;
int arr[n];
for(int i=0; i<n; i++)
{
cin>>arr[i];
}
sort(arr, arr+n);//sort函数排序 有利于后面比较
int ans = -1;
for(int k=1023; k>=1; k--) //重1023开始查找K
{
int b[n];
for(int i=0; i<n; i++)
{
b[i] = arr[i]^k;//^代表计算机里面的异或运算符
}
sort(b, b+n);//异或运算后再次排序
bool same = true;
for(int i=0; i<n; i++)
{
if(arr[i]!=b[i])
{
same = false;
}
}
if(same) ans = k;
}
cout << ans << "\n";
}
return 0;
}
cf Johnny and His Hobbies
最新推荐文章于 2020-09-22 23:17:14 发布