Nim or not Nim? HDU - 3032
原题链接
考察:博弈论
看了其他题解都是不难发现...,果然是我太弱了(.)
思路:
这题不是打表胜负态,而是打表sg函数.可以发现4个一循环.
Code
#include <iostream>
using namespace std;
int n;
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
int res = 0,x;
for(int i=1;i<=n;i++)
{
scanf("%d",&x);
if(x%4==0) res^=x-1;
else if(x%4==3) res^=x+1;
else res^=x;
}
if(res) puts("Alice") ;
else puts("Bob");
}
return 0;
}