fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. bool check(int k,int arr[],int n){
  4. int a[n];
  5. for(int i=0;i<n;i++){
  6. a[i] = (arr[i]^k);
  7.  
  8. }
  9. sort(a,a+n);
  10.  
  11. for(int i=0;i<n;i++){
  12. if(a[i]!=arr[i])
  13. return false;
  14. }
  15. return true;
  16. }
  17. int main(){
  18. ios_base::sync_with_stdio(0);
  19. cin.tie(0);
  20. cout.tie(0);
  21. int t;
  22. cin>>t;
  23. while(t--){
  24. int n;
  25. cin>>n;
  26. int arr[n];
  27. for(int i=0;i<n;i++)
  28. cin>>arr[i];
  29. sort(arr,arr+n);
  30. int ans =INT_MAX;
  31. int l=1,r=1024;
  32. while(l<=r){
  33. int mid = l + ((r-l)/2);
  34. if(check(mid,arr,n)){
  35. ans = min(ans,mid);
  36. r=mid-1;
  37. }
  38. else
  39. l=mid+1;
  40.  
  41. }
  42. if(ans==INT_MAX)
  43. cout<<-1<<"\n";
  44. else
  45. cout<<ans<<"\n";
  46. }
  47. }
  48.  
Time limit exceeded #stdin #stdout 5s 4556KB
stdin
Standard input is empty
stdout
Standard output is empty