虽然是SB模板但还真是第一次手工(然而居然又被运算符优先级调戏了)
#include <bits/stdc++.h>
using namespace std;
#define int long long
int a[60], n, t1, t2, t3, t4;
signed main() {
cin >> n;
for (int i = 1; i <= n; i++) {
int k;
cin >> k;
for (int j = 59; j >= 0; --j) {
if ((k >> j) & 1ll) {
if (a[j] == 0) {
a[j] = k;
break;
} else {
k ^= a[j];
}
}
}
}
int ans = 0;
for (int i = 59; i >= 0; --i) {
if ((ans ^ a[i]) > ans)
ans ^= a[i];
}
cout << ans << endl;
}