取石子(七)
来源:互联网 发布:java最新版本下载 编辑:程序博客网 时间:2024/04/29 16:17
取石子(七)
时间限制:1000 ms | 内存限制:65535 KB
难度:1
- 描述
Yougth和Hrdv玩一个游戏,拿出n个石子摆成一圈,Yougth和Hrdv分别从其中取石子,谁先取完者胜,每次可以从中取一个或者相邻两个,Hrdv先取,输出胜利着的名字。
- 输入
- 输入包括多组测试数据。
每组测试数据一个n,数据保证int范围内。 - 输出
- 输出胜利者的名字。
- 样例输入
23
- 样例输出
HrdvYougth
刚开始看这道题以为是巴什博弈问题,其实根本就不是,题目的叙述是将所有的石子摆成一圈,而巴什博弈是离散的,不符合这一题的要求。
假设石子数等于5,如果先者先取一个,那么后者拿走两个,将剩下的两个石子分成两堆,后者赢。如果先者先取二个,那么后者取一个使剩下的两个石子分成两堆,后者赢。
假设石子数等于6,如果先者先取一个,那么后者拿走一个,将剩下的石子分成两段,每段两个,如果先者再拿两个,那么后者赢,如果先者再拿一个,那么后者再取另一堆中的一个,这样剩下的两个石子被分成两堆, 后者赢。 如果先者先取两个,那么后者也取两个使剩下的两个石子分成两堆,后者赢。
所以当先者取走后,后者取走一个或者两个,将剩下的石子分成对称的两段,以此类推,那么如果石子数大于2后者一定赢。
- #include <stdio.h>
- int main (void)
- {
- int n;
- while (scanf("%d", &n) != EOF)
- {
- if(n > 2)
- printf("Yougth\n");
- else
- printf("Hrdv\n");
- }
- return 0;
- }
0 0
- 取石子(七)
- 取石子(七)
- 取石子(七)
- 取石子(七)
- 取石子(七)
- 取石子(七)
- 取石子(七)
- 取石子(七)
- 取石子(七)
- NYOJ833_取石子(七)
- NYOJ833 取石子(七)
- 833 取石子(七)
- NYOJ-取石子(七)
- nyoj833取石子()七
- 833 取石子(七)
- 取石子(七)思路
- 63.取石子(七)
- NYOJ833 - 取石子(七)
- 文件夹地址
- 【web开发学习笔记】Structs2 Action学习笔记(四)include的使用
- STRTOK函数和STRTOK_R函数
- web前端不可错过的开发工具–Adobe Brackets
- Linux下制作grub启动U盘,引导ubuntu LiveCD(或其他镜像)
- 取石子(七)
- spring security authorize 标签
- Python学习笔记:列表、元组、字典
- poj 2264 Advanced Fruits(DP)
- 大数相加
- 【web开发学习笔记】Structs2 Result学习笔记(一)简单介绍
- 【C++编程技巧】根据字符串中的指定字符作为分界将字符串拆分
- 在iOS开发中使用FMDB
- 沙漠变成了草原你该怎么办?