题目

参考了博客:http://blog.csdn.net/akof1314/article/details/4447709

//0 1 -2
//1 1 -1
//0 2 -1
//1 2 -1
//2 2 -2
//0 3 -1
//1 3 -1
//2 3 -1
//3 3 -2
//0 4 -1
//1 4 -1
//2 4 -1
//3 4 -1
//4 4 -2
//0 5 -1
//1 5 -1
//2 5 -1
//3 5 -1 /*
尼姆博弈。对于N堆的糖,一种情况下是每堆都是1,那么谁输谁赢看堆数就知道;对于不都是1的话,若这些堆是奇异局势,或说他们是非奇异局势,但非奇异局势皆可以转换到奇异局势(具体转变看上一篇介绍)。
经典的尼姆问题是谁哪拿到最后一个则谁赢,本题是拿最后一个的输。下面分析第二种情况:
1.初始给的是奇异局势的话,则先取者为输。
2.初始给的是非奇异局势的话,则先取者为赢。辗转转换非奇异、奇异的次数是相对的。
*/
#include<stdio.h>
#include<string.h> int main(){
int t;
scanf("%d",&t);
while(t--) {
int n;
int a[];
scanf("%d",&n);
int sum=,k=;
for(int i=;i<n;i++) {
scanf("%d",&a[i]);
sum^=a[i];//这样子判断奇异局势吗?用 ^ ?
if(a[i]!=)k=;
}
if(k==) {
if(n%)printf("Brother\n");
else printf("John\n");
}
else {
if(sum==)printf("Brother\n");////这样子判断奇异局势,为0奇异
else printf("John\n");//否则非奇异
}
}
return ;
}

最新文章

  1. poj题目
  2. Navicat 回复 psc 文件 Mysql
  3. python特殊函数 __cmp__
  4. 前端自动化工具 -- grunt 使用简介
  5. deep learning
  6. MyBatis 用户表记录数查询
  7. ubuntu硬盘安装卡在探测文件系统
  8. Python基础学习笔记(六)常用列表操作函数和方法
  9. JavaFX(一)窗口跳转
  10. NOIP2006 作业调度方案
  11. 如何在CentOS 7上修改主机名
  12. 我的linux云服务器配置记录
  13. SQL性能优化的几点建议
  14. IIS进行URL重写
  15. Windows 查找txt后缀 文件复制
  16. Yii2 设计模式——工厂方法模式
  17. Sql查询今天、本周和本月的记录(时间字段为时间戳)
  18. mac os使用迁移助手之后运行php报:dyld相关错误,错误排错流程分析
  19. Winrar发现损坏的压缩文件头
  20. spring ioc 理解

热门文章

  1. sizeof小览
  2. effective C++ 读书笔记 条款14 以对象管理资源
  3. jQuery事件传播,事件流
  4. shell中获取时间,作为文件夹格式
  5. [Unity 设计模式]IOC依赖倒置
  6. Ubuntu 查看当前目录使用的总空间大小
  7. 第一篇 Windows 8 开发Windows Metro style app环境配置
  8. loj 102 最小费用流
  9. P1606 [USACO07FEB]白银莲花池Lilypad Pond
  10. redhat6 改 centos yum 源