HDU2176 取(m堆)石子游戏

来源:互联网 发布:私募基金经理收入 知乎 编辑:程序博客网 时间:2024/06/05 08:08

Nim博弈

解法和HDU1850相似:http://blog.csdn.net/qinmusiyan/article/details/7949557


#include<iostream>#include<cstdio>using namespace std;const int N=200002;int a[N];int main(){    int m,sum,s,i;while(scanf("%d",&m)!=EOF&&m){    sum=0;for(i=0;i<m;i++){ scanf("%d",&a[i]);sum=sum^a[i];}if(sum==0) printf("No\n");else{   printf("Yes\n");   for(i=0;i<m;i++)   {       s=sum^a[i];   if(s<a[i])   printf("%d %d\n",a[i],s);      }}}   return 0;}


原创粉丝点击