HDU 1849 Rabbit and Grass(nim博弈)

题目地址:HDU 1849

初次接触nim博弈,感觉好神奇的说。。。居然可以跟异或运算扯上关系。。。。给人类的智商跪了。。。作为地球人我感到很自豪。。

具体证明什么的看这篇博客被。传送门

代码如下:

#include <iostream>
#include <cstdio>
#include <string>
#include <cstring>
#include <stdlib.h>
#include <math.h>
#include <ctype.h>
#include <queue>
#include <map>
#include <set>
#include <algorithm>

using namespace std;
int main()
{
    int n, x, sum, i;
    while(scanf("%d",&n)!=EOF&&n)
    {
        sum=0;
        for(i=0;i<n;i++)
        {
            scanf("%d",&x);
            sum^=x;
        }
        if(sum)
            puts("Rabbit Win!");
        else
            puts("Grass Win!");
    }
    return 0;
}


你可能感兴趣的:(编程,算法,C语言,ACM,博弈论)