标签:这一 ted include 石头 user space scan -- zoj
博弈论
/************************************************************** Problem: 1022 User: lxy8584099 Language: C++ Result: Accepted Time:44 ms Memory:820 kb ****************************************************************/ /* 1 必输 2~n 必赢 SG[i]=[i] 如果异或起来不为0 并且存在大于1的某堆石头 则John赢 如果异或起来为0 并且不存在大于1的数 则john赢 (没考虑到这一点 剩下的就是brother赢 */ #include<cstdio> using namespace std; int main() { int T;scanf("%d",&T); while(T--) { int n,ans=0,bj=0;scanf("%d",&n); for(int i=1,x;i<=n;i++) { scanf("%d",&x);ans^=x; if(x>1) bj=1; } if(ans&&bj) puts("John"); else if(!ans&&!bj) puts("John"); else puts("Brother"); } return 0; }
bzoj 1022: [SHOI2008]小约翰的游戏John
标签:这一 ted include 石头 user space scan -- zoj
原文地址:https://www.cnblogs.com/lxy8584099/p/10167899.html