結果
問題 |
No.1082 XORのXOR
|
ユーザー |
![]() |
提出日時 | 2020-06-19 22:57:05 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,334 bytes |
コンパイル時間 | 1,572 ms |
コンパイル使用メモリ | 176,260 KB |
実行使用メモリ | 818,048 KB |
最終ジャッジ日時 | 2024-07-03 15:24:10 |
合計ジャッジ時間 | 3,370 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 WA * 1 |
other | MLE * 1 -- * 28 |
ソースコード
#include <bits/stdc++.h> #define rep(i, n) for (long long i = 0; i < (int)(n); i++) #define put(i) cout << fixed << i << endl using namespace std; using ll = long long; void bubbleSort(vector<ll> a, ll array_size) { ll i, j, k; for (i = 0; i < (array_size - 1); i++) { for (j = (array_size - 1); j > i; j--) { if (a[j] < a[j - 1]) { k = a[j]; a[j] = a[j - 1]; a[j - 1] = k; } } } } int main() { ll n; cin >> n; ll ans, maxa = 0; vector<ll> a(n), b(n - 1); rep(i, n) cin >> a[i]; vector<vector<ll>> nest(n * n); // kokodenantokasuru sort(a.begin(), a.end(), greater<ll>()); ll k, cnt = 0; for (ll i = 0; i < (n - 1); i++) { for (ll j = (n - 1); j > i; j--) { if (a[j] < a[j - 1]) { k = a[j]; a[j] = a[j - 1]; a[j - 1] = k; } nest[cnt++] = a; } } for(long long j = 0; j < cnt; j++) { vector<ll> x = nest[j]; for (long long i = 0; i < n - 1; i++) { b[i] = x[i] xor x[i + 1]; } ans = b[0]; for (long long i = 1; i < n - 1; i++) { ans = ans xor b[i]; } maxa = max(ans, maxa); } put(maxa); }