fork download
  1. #include<bits/stdc++.h>
  2. #include<ext/pb_ds/assoc_container.hpp>
  3. #include<ext/pb_ds/tree_policy.hpp>
  4.  
  5. using namespace std;
  6. using namespace __gnu_pbds;
  7.  
  8.  
  9. #define int long long int
  10. #define pb push_back
  11. #define pii pair<int,int>
  12. #define vi vector<int>
  13. #define pqi priority_queue<int>
  14. #define pqim priority_queue<int,vector<int>,greater<int>>
  15. #define umis unordered_map<int,string>
  16. #define umii unordered_map<int,int>
  17. #define msi map<string,int>
  18. #define mii map<int,int>
  19. #define setbits(n) __builtin_popcountll(n) // for long long
  20. #define zrbits(n) __builtin_ctzll(n)
  21. #define f(i,x,n) for(int i=x;i<n;++i)
  22. #define mod 1000000007
  23. #define sp(x,y) fixed<<setprecision(y)<<x
  24. mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
  25. #define fastio ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0)
  26. typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> pbds;
  27.  
  28.  
  29.  
  30.  
  31. // ============================================================================================================
  32.  
  33.  
  34. int32_t main() {
  35.  
  36. fastio;
  37.  
  38. int n, num;
  39. cin >> n;
  40.  
  41. int arr[n];
  42. f(i, 0, n) {
  43. cin >> num;
  44. arr[i] = num;
  45. }
  46.  
  47. sort(arr, arr + n);
  48.  
  49. if (n >= 130) cout << "Yes" << endl;
  50. else {
  51. bool flag = false;
  52. f(i, 0, n) {
  53. f(j, i + 1, n) {
  54. f(k, j + 1, n) {
  55. int d = (arr[i] ^ arr[j] ^ arr[k]);
  56. if (binary_search(arr, arr + n, d)) {
  57. flag = true;
  58. break;
  59. }
  60. }
  61. if (flag) break;
  62. }
  63. if (flag) break;
  64. }
  65. if (flag) cout << "Yes" << endl;
  66. else cout << "No" << endl;
  67. }
  68. return 0;
  69. }
  70.  
Success #stdin #stdout 0s 4528KB
stdin
5
1 0 2 3 7
stdout
Yes