NYOJ 833 取石子(七)
来源:互联网 发布:贴片电容标称值算法 编辑:程序博客网 时间:2024/06/08 13:41
取石子(七)
时间限制:1000 ms | 内存限制:65535 KB
难度:1
- 描述
Yougth和Hrdv玩一个游戏,拿出n个石子摆成一圈,Yougth和Hrdv分别从其中取石子,谁先取完者胜,每次可以从中取一个或者相邻两个,Hrdv先取,输出胜利着的名字。
- 输入
- 输入包括多组测试数据。
每组测试数据一个n,数据保证int范围内。 - 输出
- 输出胜利者的名字。
- 样例输入
23
- 样例输出
HrdvYougth
- 来源
- Poj
这道题确实很坑,它取完之后形成空位,不再连成环。
刚开始看这道题以为是巴什博弈问题,其实根本就不是,题目的叙述是将所有的石子摆成一圈,而巴什博弈是离散的,不符合这一题的要求。
假设石子数等于5,如果先者先取一个,那么后者拿走两个,将剩下的两个石子分成两堆,后者赢。如果先者先取二个,那么后者取一个使剩下的两个石子分成两堆,后者赢。
假设石子数等于6,如果先者先取一个,那么后者拿走一个,将剩下的石子分成两段,每段两个,如果先者再拿两个,那么后者赢,如果先者再拿一个,那么后者再取另一堆中的一个,这样剩下的两个石子被分成两堆, 后者赢。 如果先者先取两个,那么后者也取两个使剩下的两个石子分成两堆,后者赢。
所以当先者取走后,后者取走一个或者两个,将剩下的石子分成对称的两段,以此类推,那么如果石子数大于2后者一定赢。
#include <iostream>#include<cstdio>#include<cmath>#include<cstring>using namespace std;int main(){ int n; while(cin>>n) { if(n>2) printf("Yougth\n"); else printf("Hrdv\n"); } return 0;}
阅读全文
1 0
- 取石子(七)(NYOJ 833)
- nyoj-833-取石子(七)
- NYoj - 833 取石子(七)
- NYOJ-833 取石子(七)
- nyoj 833 取石子(七)
- NYOJ 833 取石子(七)【博弈】
- NYOJ 833 取石子(七)
- nyoj题目833:取石子(七)
- NYOJ 833 取石子(七)
- 【NYOJ】[833]取石子(七)
- NYOJ 833 取石子(七)
- NYOJ【833】取石子(七)【思维】
- NYOJ 833 取石子(七)
- NYOJ 833 取石子(七)
- NYOJ-取石子(七)
- nyoj.833 取石子(七)【水题】 20141201
- nyoj 取石子(七) 环形博弈
- 833 取石子(七)
- 二叉树的深度优先遍历(栈)和广度优先遍历(队列)
- Linux tar命令
- 【BZOJ】1598 [Usaco2008 Mar]牛跑步 k短路(最短路径+A*)
- 会话技术
- MyBatis注解
- NYOJ 833 取石子(七)
- 2017最佳经典之作-AngularJs 中select 下拉多选
- A
- 《剑指offer》笔记-第4章(4)
- idea 配置Tomcat
- 关于卸载赛风(psiphon)打不开网页解决办法
- 【分享】一些经典的C/C++语言基础算法及代码(一)
- 【分享】一些经典的C/C++语言基础算法及代码(二)
- 【分享】一些经典的C/C++语言基础算法及代码(三)