(step8.2.2)hdu 2509(Be the Winner——简单博弈)

题目大意:输入一个整数n,表示火柴堆数(原题其实指的是苹果堆数,但是为了尽量与模板保持一致,所以在这里理解为火柴堆数。。。。其实理解为什么都没关系,

重要的是,理解就行。。。。)。在接下来的一行中,有n个数字,表示每个火柴堆的火柴根数。


解题思路:还是去火柴棒的问题

详细的说明请参考上一篇博客


代码如下:

 

/*

 * 2509_1.cpp

 *

 *  Created on: 2013年9月1日

 *      Author: Administrator

 */



#include <iostream>



using namespace std;





int main(){

	int sum1;

	int sum2;

	int ans;



	int n;

	while(scanf("%d",&n) != EOF){

		sum1 = 0;

		sum2 = 0;

		ans = 0;



		int a[n];

		int i;

		for(i = 0 ; i < n ; ++i){

			scanf("%d",&a[i]);



			if(a[i] >= 2){

				sum1++;

			}else{

				sum2++;

			}



			ans ^= a[i];

		}



		if( (ans != 0 && sum1 != 0) || (ans == 0 && sum1 == 0) ){

			printf("Yes\n");

		}else{

			printf("No\n");

		}

	}

}






 

 

你可能感兴趣的:(inner)