結果
| 問題 |
No.2059 Odd Move Nim
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2022-08-26 22:21:37 |
| 言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 82 ms / 2,000 ms |
| コード長 | 1,151 bytes |
| コンパイル時間 | 2,980 ms |
| コンパイル使用メモリ | 245,180 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-10-15 11:07:15 |
| 合計ジャッジ時間 | 4,732 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 21 |
ソースコード
#include<bits/stdc++.h>
using namespace std;
//
// map<vector<int>,int> mp;
// int f(vector<int> a){
// if(mp.find(a)!=mp.end()){return mp[a];}
// int cur=-1;
// for(int i=1;cur==-1 && i<a.size();i++){
// for(int j=1;cur==-1 && j<=i;j+=2){
// vector<int> b=a;
// while(b[i]>0){
// b[i]--;
// b[i-j]++;
// if(f(b)==-1){cur=1;break;}
// }
// }
// }
// mp[a]=cur;
// return cur;
// }
//
// void rep(int n,int m,vector<int> &a){
// if(n==0){
// f(a);
// return;
// }
// for(int i=0;i<=m;i++){
// a.push_back(i);
// rep(n-1,m-i,a);
// a.pop_back();
// }
// }
//
// int main(){
// int n,m;
// cin >> n >> m;
// vector<int> ini={};
// rep(n,m,ini);
//
// for(auto &nx : mp){
// if(nx.second==-1){
// for(auto &ny : nx.first){cout << ny << " ";}
// cout << "\n";
// }
// }
// return 0;
// }
int main(){
int n;
cin >> n;
vector<int> a(n);
for(auto &nx : a){cin >> nx;}
int g=0;
for(int i=1;i<n;i+=2){
g^=a[i];
}
if(g==0){cout << "Bob\n";}
else{cout << "Alice\n";}
return 0;
}
// Sorry, I don't like this task.