bzoj 1022: [SHOI2008]小约翰的游戏John

 1 #include<cstdio>
 2 #include<iostream>
 3 using namespace std;
 4 int T,a[100],n;
 5 int main()
 6 {
 7     scanf("%d",&T);
 8     for(;T;T--)
 9       {
10         int a1=0,kg=0;
11         scanf("%d",&n);
12         for(int i=1;i<=n;i++)
13           {
14             scanf("%d",&a[i]);
15             a1=a1^a[i];
16             if(a[i]>1)
17               kg=1;
18           }
19         if((kg&&a1)||(!kg&!a1))
20           printf("John
");
21         else
22           printf("Brother
");
23       }
24     return 0;
25 }
26 

这是一个简单的博弈问题,正好和Nim游戏相反,然而我的博弈并不会,只记住了结论。

原文地址:https://www.cnblogs.com/xydddd/p/5226965.html