首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

HDU2176 取(m堆)石子儿游戏

2012-09-10 
HDU2176 取(m堆)石子游戏Nim博弈解法和HDU1850相:http://blog.csdn.net/qinmusiyan/article/details/79495

HDU2176 取(m堆)石子游戏

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;}


热点排行