码迷,mamicode.com
首页 > 其他好文 > 详细

HDU 4994 Revenge of Nim (博弈)

时间:2014-09-13 09:27:04      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:博弈   hdu   

题目链接:HDU 4994 Revenge of Nim

题意:两个取石头,分别在N堆里去。只有第一堆取完才能取第二堆,以此类推,最后一个取完的为赢家。

思路:从头开始扫,直到第一个不为1为止,判断现在的主动权在谁手里,谁就是赢家。(这里读者可以自己写几组数据试试。)



AC代码:


#include<stdio.h>
#include<string.h>

int main()
{
	int yaoga;
	int t,i,n;
	int a[1010];

	while(scanf("%d",&t)!=EOF)
	{
		while(t--)
		{
			scanf("%d",&n);
			int count=0;
			bool ok=true;
			for(i=1;i<=n;i++)
			{
				scanf("%d",&a[i]);
				if(a[i]>1) ok=false;
				if(ok) count++;
			}
			if(ok)
			{
				if(count%2==0)
					printf("No\n");
				else
					printf("Yes\n");
			}
			else
			{
				if(count%2)
					printf("No\n");
				else
					printf("Yes\n");
			}
		}
	}
	return 0;
}


HDU 4994 Revenge of Nim (博弈)

标签:博弈   hdu   

原文地址:http://blog.csdn.net/u012377575/article/details/39235315

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!