【博弈论】poj1704

来源:互联网 发布:致知在格物的意思 编辑:程序博客网 时间:2024/06/09 22:45
相邻两个绑成一组,它就变成了一个
#include<iostream>#include<cstdio>#include<cstdlib>#include<cmath>#include<algorithm>#include<cstring>#include<set>#include<queue>using namespace std;int a[201000];int n,t;int main(){//freopen("test.in","r",stdin);scanf("%d",&t);while (t--){//memset(a,0,sizeof(a));int ans=0;scanf("%d",&n);for (int i=1;i<=n;i++)scanf("%d",&a[i]);if (n&1) a[++n]=0;sort(a+1,a+n+1);for (int i=1;i<=n;i+=2)ans^=(a[i+1]-a[i]-1);if (ans) printf("Georgia ");else printf("Bob ");printf("will win\n");}return 0;}

nim游戏。。。。如果奇数个石子,就相当于开头在0处有一个石子
0 0