hdu 1907 John (Nim变形)
http://acm.hdu.edu.cn/showproblem.php?pid=1907
Nim的变形,最后取为败,详见http://www.cnblogs.com/tanky_woo/archive/2010/08/20/1804464.html中取火柴游戏2。
这里总结下结论:
1. 当所有堆个数都为1时,若为奇数堆,即异或不为0,则先手败,反之先手胜。
2. 非所有堆个数都为1时,则异或不为0先手胜。
用上述博文中的定义则为T0, S1, S2为必胜态,T1, S0为必败态。
code:
int main(){
int t, n, f, i, a, sum ;
scanf("%d", &t) ;
while(t--){
sum = f = 0 ;
scanf("%d", &n) ;
for(i=0; i<n; i++){
scanf("%d", &a) ;
sum ^= a ;
if(a>1) f = 1 ;
}
if(sum) sum = 1 ;
if(f^sum) printf("Brother\n") ;
else printf("John\n") ;
}
return 0 ;}
转载于:https://www.cnblogs.com/xiaolongchase/archive/2012/05/04/2482217.html
hdu 1907 John (Nim变形)相关推荐
- HDU - 1907 John(尼姆博弈变形)
题目链接:点击查看 题目大意:给出 n 堆石子,两个人轮流取,至少取一个,取到最后一个的人输 题目分析:尼姆博弈是取到最后一个的人获胜,这个题正好反着 一个很显然的奇异局势就是,每一堆的石子的个数都为 ...
- hdu 1907 John
anti-SG裸题 终于刷到09年了\(^o^)/ 话说SJ定理这个名字怎么这么喜感呢. #include<iostream> #include<cstdio> #includ ...
- hdu 1907 & hdu 2509(Nim博弈)
其实我都是一直叫它(尼美博弈) 模型: 给你N堆,每堆数目是确定的(输入),每次从一堆取一个,多者不限,最多取完一堆.有两人AB,A先手,规定最后一个取完者赢(输).问先后手哪个赢(输).(假定两个人 ...
- HDU 3094 树上删边 NIM变形
基本的树上删边游戏 写过很多遍了 /** @Date : 2017-10-13 18:19:37* @FileName: HDU 3094 树上删边 NIM变形.cpp* @Platform: Win ...
- hdu 1907 Jone 尼姆博弈
题目:点击打开链接 John Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) T ...
- ZOJ 3964 NIM变形
LINK 题意:n堆石子,Alice 和 Bob 轮流取石子,谁不能再取或被对方取完为败.但是对于alice拥有限制:b=0此堆正常无限制:b=1此堆Alice只能取奇数个石子:b=2只能取偶数个石子 ...
- [ACM_动态规划] hdu 1176 免费馅饼 [变形数塔问题]
Problem Description 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁 ...
- hdu dfs入门java_hdu1181变形课dfs/bfs/并查集三种解法(java)
题目链接 Problem Description 呃-变形课上Harry碰到了一点小麻烦,因为他并不像Hermione那样能够记住所有的咒语而随意的将一个棒球变成刺猬什么的,但是他发现了变形咒语的一个 ...
- HDU 3466 01背包变形
给出物品数量N和总钱数M 对于N个物品.每一个物品有其花费p[i], 特殊值q[i],价值v[i] q[i] 表示当手中剩余的钱数大于q[i]时,才干够买这个物品 首先对N个物品进行 q-p的排序,表 ...
- HDU 2516 (Fabonacci Nim) 取石子游戏
这道题的结论就是,石子的个数为斐波那契数列某一项的时候,先手必败:否则,先手必胜. 结论很简单,但是证明却不是特别容易.找了好几篇博客,发现不一样的也就两篇,但是这两篇给的证明感觉证得不清不楚的,没看 ...
最新文章
- 在idea项目中的android包不能识别_项目调试编译和部署运行
- udacity车道线检测GIT库
- 收藏 | 应对程序员面试,你必须知道的8大数据结构
- 如何把opencv编译到matlab,c – 为OpenCV编译MATLAB绑定
- 机器学习中的数据不平衡问题----通过随机采样比例大的类别使得训练集中大类的个数与小类相当,或者模型中加入惩罚项...
- tcpdump的简单选项介绍
- 在应用了皮肤的程序中制作透明的文本编辑控件(如:TcxMemo)
- Android学习视频
- linux AIO (异步IO) 那点事儿
- 电脑测速软件_不服跑个分!常见固态硬盘测速工具性价比盘点(上)
- BZOJ 2442: [Usaco2011 Open]修剪草坪( dp )
- java 常量池是什么_Java常量池理解与总结
- 力扣-169 多数元素
- 常用的MATLAB建模工具箱
- STM32f4日记9之LD3320语音识别(您的私人语音助手MICRO)
- win10系统20H2版本更新以后桌面底下弹出了对话框,说我们在加载你的信息流时遇到了问题?
- 2021年中国化妆品发展现状及进出口状况分析:消费升级局面下,化妆品市场依旧景气 [图]
- 声明一个长方形类,属性有长和宽;操作有赋值、计算长方形的周长和面积、输出信息等,要求定义构造函数(缺省值为10)和析构函数。
- 解决gitlab-runner一直处于等待中
- HEVC预测块(PU)模式划分显示
热门文章
- android 如何启动nfc卡模拟模式_用手机模拟小区业主卡,出入更加便捷,免去带卡的烦恼,(限安卓)...
- webgis 行政图报错_开源WebGIS:地图发布与地图服务
- ShowDoc v2.4.8 发布,IT团队的在线 API 文档工具
- vue-cli3.0升级失败,vue-cli卸载不掉,vue-cli升级不了3.0,
- 干货~powershell与bash和docker在项目中怎么用
- AC日记——【模板】二分图匹配 洛谷 P3386
- Kafka设计解析(三):Kafka High Availability (下)
- 适合iOS的15大网站推荐
- [转载]年末致富有新招,写个程序抓红包
- 来自汽车行业的20个优秀的汽车推广网站