結果
問題 |
No.699 ペアでチームを作ろう2
|
ユーザー |
|
提出日時 | 2018-09-11 22:38:48 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 165 ms / 1,000 ms |
コード長 | 704 bytes |
コンパイル時間 | 2,287 ms |
コンパイル使用メモリ | 204,304 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-06-24 08:37:18 |
合計ジャッジ時間 | 4,678 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 12 |
ソースコード
#define _GLIBCXX_DEBUG #include <bits/stdc++.h> #define ll long long #define REP(i, n) for (ll (i) = 0; (i) < (n); (i)++) #define REPI(i, a, b) for (ll (i) = (a); (i) < (b); (i)++) #define int long long using namespace std; using P = pair<int, int>; using VI = vector<int>; using VVI = vector<VI>; using VVVI = vector<VVI>; int N; VI A; int dfs(VI& x, int acc) { if (x.size() == 0) { return acc; } int ans = -1; REP (i, x.size()-1) { VI y(x); int tmp = acc ^ (x[i] + x.back()); y.erase(y.begin() + i); y.erase(y.end() - 1); ans = max(ans, dfs(y, tmp)); } return ans; } signed main() { cin >> N; A.resize(N); REP (i, N) { cin >> A[i]; } cout << dfs(A, 0) << endl; }