(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"); } } }