HDU 1850 Being a Good Boy in Spring Festival (Nim游戏变形)
来源:互联网 发布:淘宝双十一抽奖在哪里 编辑:程序博客网 时间:2024/05/16 13:49
题意:经典Nim游戏博弈,给你n堆牌,每堆a[i]张,每次能从一堆中取出任一张(不能为0),最后不能取者为输
问先手有几种取法保证他最后能获胜。
思路:让Nim_sum=0(a[1]^a[2]…………^a[n]=0)时则输,利用这个定理,对于第i堆a[i],除了第i堆,其它的
Nim_sum=k,如果a[i]>k,则先手从第i堆可以取a[i]-k张牌,让a[i]=k,最后a[i]^k==0。
#include<cstdio>#include<stdlib.h>#include<string.h>#include<string>#include<map>#include<cmath>#include<iostream>#include <queue>#include <stack>#include<algorithm>#include<set>using namespace std;#define INF 1e8#define eps 1e-8#define LL long longint main(){int n;int a[110];while(scanf("%d",&n)&&n){int st=0;for(int i=0;i<n;i++){scanf("%d",&a[i]);st^=a[i];}int ans=0;if(st==0){printf("0\n");}else {for(int i=0;i<n;i++){if((st^a[i])<=a[i])//xor可以互逆ans++;}printf("%d\n",ans);}}return 0;}
0 0
- HDU 1850 Being a Good Boy in Spring Festival (Nim游戏变形)
- hdu 1850 Being a Good Boy in Spring Festival(nim游戏)
- HDU 1850 Being a Good Boy in Spring Festival(博弈·Nim游戏)
- Being a Good Boy in Spring Festival - HDU 1850 Nim
- HDU 1850 Being a Good Boy in Spring Festival(Nim游戏)
- HDU 1850 Being a Good Boy in Spring Festival 博弈Nim游戏
- [ACM] hdu 1850 Being a Good Boy in Spring Festival(Nim博弈)
- HDU 1850 Being a Good Boy in Spring Festival (Nim博弈)
- HDU 1850 Being a Good Boy in Spring Festival(Nim博弈)
- hdu 1850 Being a Good Boy in Spring Festival(Nim博弈)
- HDU 1850 Being a Good Boy in Spring Festival (Nim博弈求第一步选择数)
- HDU 1850 Being a Good Boy in Spring Festival(Nim博弈)
- hdu 1850 Being a Good Boy in Spring Festival (Nim博弈求第一步走法数)
- [HDU](1850)Being a Good Boy in Spring Festival ---Nim博弈(博弈)
- Being a Good Boy in Spring Festival(Nim博弈)
- Being a Good Boy in Spring Festival(Nim博弈变形)
- 浅谈Nim博弈 附hdu 2176 取(m堆)石子游戏 ,hdu 1850 Being a Good Boy in Spring Festival
- hdu 1850 Being a Good Boy in Spring Festival(组合游戏-博弈)
- 编译 ioftpd v7.7.3
- C#.net web开发,母版页和内容页加载的顺序
- 2.8.等待多个并发完成
- HDU1116(欧拉回路+并查集)
- 第十一周项目1
- HDU 1850 Being a Good Boy in Spring Festival (Nim游戏变形)
- android.os.NetworkOnMainThreadException 异常
- [编程挑战]交替字符串,仅供参考
- virtual circuit wait等待事件
- python爬虫学习(一)
- Java基础部分笔记
- 谷歌招聘新员工五大标准:文凭一边玩去
- View Controller的生命周期
- 解决live CD方式启动Ubuntu系统不能启动openssh-server服务