取石子(七)
时间限制:
1000 ms | 内存限制:
65535 KB
难度:
1
-
描述
-
Yougth和Hrdv玩一个游戏,拿出n个石子摆成一圈,Yougth和Hrdv分别从其中取石子,谁先取完者胜,每次可以从中取一个或者相邻两个,Hrdv先取,输出胜利着的名字。
-
输入
-
输入包括多组测试数据。
每组测试数据一个n,数据保证int范围内。
输出
- 输出胜利者的名字。 样例输入
-
2 3
样例输出
-
Hrdv Yougth
-
输入包括多组测试数据。
注-此题为: NYOJ 833 取石子(七)
题意:
将所有的石子摆成一圈,
假设石子数等于5,
如果先者先取一个,那么后者拿走两个,将剩下的两个石子分成两堆,后者赢。
如果先者先取二个,那么后者取一个使剩下的两个石子分成两堆,后者赢。
假设石子数等于6,
如果先者先取一个,那么后者拿走一个,将剩下的石子分成两段,每段两个,
如果先者再拿两个,那么后者赢,如果先者再拿一个,那么后者再取另一堆中的一个,这样剩下的两个石子被分成两堆, 后者赢。
如果先者先取两个,那么后者也取两个使剩下的两个石子分成两堆,后者赢。
所以当先者取走后,后者取走一个或者两个,将剩下的石子分成对称的两段,以此类推,那么如果石子数大于2后者一定赢。
已AC代码:
#include<cstdio>
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
if(n>2)
printf("Yougth\n");
else
printf("Hrdv\n");
}
return 0;
}