bzoj1115: [POI2009]石子游戏Kam
Description
有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数。两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时的条件谁没有石子可移时输掉游戏。问先手是否必胜。
Input
第一行u表示数据组数。对于每组数据,第一行N表示石子堆数,第二行N个数ai表示第i堆石子的个数(a1<=a2<=……<=an)。 1<=u<=10 1<=n<=1000 0<=ai<=10000
Output
u行,若先手必胜输出TAK,否则输出NIE。
Sample Input
2
2 2
3
1 2 4
Sample Output
TAK
HINT
感谢MT大牛翻译.
1 #include<bits/stdc++.h> 2 #define rep(i,l,r) for(int i=l;i<=r;++i) 3 using namespace std; 4 int T,n,a[1024],s[1024],ans; 5 int main(){ 6 scanf("%d",&T); 7 while(T--){ 8 scanf("%d",&n); ans=0; 9 memset(a,0,sizeof a); 10 rep(i,1,n) scanf("%d",&a[i]),s[i]=a[i]-a[i-1]; 11 for(int i=n;i>0;i-=2) ans^=s[i]; 12 if(ans) puts("TAK");else puts("NIE"); 13 } 14 }
View Code
转载于:https://www.cnblogs.com/Bloodline/p/5991139.html
bzoj1115: [POI2009]石子游戏Kam相关推荐
- BZOJ1115:[POI2009]石子游戏Kam(博弈论)
挺水的 听说是阶梯nim和,就去看了一下,然后就会了= = 观察题目,发现拿第i堆棋子k个造成的影响就是第i+1堆棋子能多拿k个 可以把模型转化为,有n堆石子,每次从某一堆拿一个石子,放在下一堆中,不 ...
- 【博弈论】bzoj1115 [POI2009]石子游戏Kam
差分后与阶梯博弈很类似. #include<cstdio> using namespace std; int n,T,a[1001],ans; int main() {scanf(&quo ...
- bzoj1115:[POI2009]石子游戏Kam
传送门 阶梯nim模型 代码: #include<cstdio> #include<iostream> #include<algorithm> using name ...
- bzoj 1115: [POI2009]石子游戏Kam(博弈)
1115: [POI2009]石子游戏Kam Time Limit: 10 Sec Memory Limit: 162 MB Submit: 1132 Solved: 692 [Submit][S ...
- 【bzoj1115】 [POI2009]石子游戏Kam
Description 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数.两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时的条件谁没有石子可移时输掉游戏 ...
- [POI2009]石子游戏Kam
Description 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数.两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时的条件谁没有石子可移时输掉游戏 ...
- 1115: [POI2009]石子游戏Kam
Description 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数.两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时的条件谁没有石子可移时输掉游戏 ...
- BZOJ 1115: [POI2009]石子游戏Kam
Description 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数.两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时的条件谁没有石子可移时输掉游戏 ...
- [BZOJ]1115 石子游戏Kam
1115: [POI2009]石子游戏Kam Time Limit: 10 Sec Memory Limit: 162 MB Submit: 1061 Solved: 651 [Submit][S ...
最新文章
- ERROR while rich displaying an object: Error: Continuous value supplied to discrete scale
- Java从零开始学六(运算符)
- 如何利用OpenCV寻找轮廓的中心?
- Keras下载的数据集以及预训练模型保存在哪里
- loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写
- vue与node和npm关系
- Licia:最全最实用的 JavaScript 工具库
- RT-Thread FinSH控制台添加自定义msh命令原理
- asinh函数_JavaScript中带有示例的Math.asinh()方法
- 同一个容器实例可以同时运行在多个宿主机_从零开始学K8s: 3.什么是容器
- Web服务器常用设置
- Error: cannot allocate vector of size 88.1 Mb问题
- mock.js那点事(上)
- Day1通信基本概念 通信系统模型 通信系统分类与通信方式
- Mac苹果电脑开启任何来源选项详细教程
- 共享计算机突然无法访问,共享的文件突然不能访问了电脑重启后又能访问为什么...
- Glide内存占用优化
- Wingdings 2 符号编码对照表
- php获取城市接口,根据ip调用新浪api获取城市名并转成拼音
- 实战PyQt5: 141-QChart图表之箱形图
热门文章
- AMD推Radeon HD 7790显卡 性价比突出下月开卖
- 去除网页FLASH单击并激活此控件解决办法
- hiveserver2和metastore简要概括作用
- 为什么是hbase而不是mongodb
- ubuntu系统下面PhantomJS not found on PATH
- ValueError: cannot index a corpus with zero features (you must specify either `num_features` or a no
- php从大到小排列数字,php输入几个数从大到小排序
- 127.0.0.1/dokuwiki/install.php,DokuWiki安装+集成markdown编辑器editor.md
- p7zip的解压和压缩
- 搭建Vue.js环境,建立一个简单的Vue项目