#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define INF 1000000000 using namespace std; typedef long long ll; const int MAXN = 100010; int dfs(int bit, vector& v) { if (bit == 0) { int ret = 0; for (int i = 0; i < (int)v.size(); i++) { ret ^= v[i]; } return ret; } if (v.size() <= 1) return 0; vector bit0, bit1; for (int i = 0; i < (int)v.size(); i++) { if (v[i] >> bit & 1) bit1.push_back(v[i]); else bit0.push_back(v[i]); } if (bit0.empty()) return dfs(bit-1, bit1); if (bit1.empty()) return dfs(bit-1, bit0); return (1<> N; vector a(N); for (int i = 0; i < N; i++) cin >> a[i]; cout << dfs(30, a) << endl; return 0; }