hdu 3537 Daizhenyang's Coin 博弈论

详见:http://www.cnblogs.com/xin-hua/p/3255985.html 约束条件6

代码如下:

 

 1 #include<iostream>

 2 #include<stdio.h>

 3 #include<algorithm>

 4 #include<iomanip>

 5 #include<cmath>

 6 #define in(x) scanf("%d",&x)

 7 using namespace std;

 8 int a[101];

 9 int main(){

10     int  n,i,j,t,ans,num,cnt,k;

11     while(in(n)!=EOF){

12         if(n==0){

13             puts("Yes");

14             continue;

15         }

16         for(i=0;i<n;i++) in(a[i]);

17         sort(a,a+n);

18         j=1;

19         for(i=1;i<n;i++)

20             if(a[i]!=a[i-1])

21                 a[j++]=a[i];

22         ans=0;

23         for(i=0;i<j;i++){

24             k=a[i];t=2*k;num=0;

25             while(k){

26                 if(k&1) num++;

27                 k>>=1;

28             }

29             if(num&1) ans^=t;

30             else ans^=t+1;

31         }

32         puts(ans?"No":"Yes");

33     }

34     return 0;

35 }
View Code

 

 

 

 

你可能感兴趣的:(HDU)