nyoj 585 取石子 Nim

Posted liguangsunls

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nyoj 585 取石子 Nim相关的知识,希望对你有一定的参考价值。

取石子(六)

时间限制:1000 ms  |  内存限制:65535 KB
难度:3
描写叙述
近期TopCoderPIAOYIHRDV非常无聊,于是就想了一个游戏,游戏是这种:有n堆石子,两个人轮流从当中某一堆中随意取走一定的石子,最后不能取的为输家。注意: 每次仅仅能从一堆取随意个,能够取完这堆,但不能不取。

如果PIAOYI先取石子,请你帮他推断他能否赢(如果他们取的过程中不发生失误,他们足够聪明技术分享)。

输入
第一行输入n,代表有n组測试数据(n<=10000)
下面每组測试数据包括两行:第一行:包括一个整数m。代表本组測试数据有m(m<=1000)堆石子;
:第二行:包括m个整数Ai(Ai<=100),分别代表第i堆石子的数量。
输出
若PIAOYI赢输出“PIAOYI”,否则输出“HRDV”注意每组结果占一行。。
例子输入
3
2
1 1
3
3 8 11
2
5 10
例子输出
HRDV
HRDV
PIAOYI

代码:

 
#include <stdio.h>
 int main(){
 	int t, n, ans, a;
 	scanf("%d", &t);
 	while(t --){
	 	scanf("%d", &n);
	 	ans = 0;
	 	while(n --){
		 	scanf("%d", &a);
		 	ans^=a;
		 }
		 printf("%s\n", ans?

"PIAOYI":"HRDV"); } return 0; }












以上是关于nyoj 585 取石子 Nim的主要内容,如果未能解决你的问题,请参考以下文章

NYOJ-取石子

BZOJ 1874: [BeiJing2009 WinterCamp]取石子游戏 [Nim游戏 SG函数]

nyoj 23-取石子(博弈)

模板nim游戏

P2197 nim游戏

浅析Nim游戏和ICG博弈