考贾志豪论文。走完最后一步者输,Anti-SG游戏和SJ定理。对于任意一个Anti-SG游戏,如果我们规定当局面中所有的单一游戏的SG值为0时,游戏结束,则先手必胜当且仅当:(1)游戏的SG函数不为0且游戏中某个单一游戏的SG函数大于1;(2)游戏的SG函数为0且游戏中没有单一游戏的SG函数大于1。
/*******************************************************************************
# Author : Neo Fung
# Email : neosfung@gmail.com
# Last modified: 2012-06-12 21:38
# Filename: ZOJ2507 Let's play a game.cpp
# Description :
******************************************************************************/
#ifdef _MSC_VER
#define DEBUG
#define _CRT_SECURE_NO_DEPRECATE
#endif
#include <fstream>
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <string>
#include <limits.h>
#include <algorithm>
#include <math.h>
#include <numeric>
#include <functional>
#include <ctype.h>
using namespace std;
const int kMAX=10010;
const double kEPS=10E-6;
int main(void)
{
#ifdef DEBUG
freopen("../stdin.txt","r",stdin);
freopen("../stdout.txt","w",stdout);
#endif
int n,ncase=1,tmp;
scanf("%d",&ncase);
while(~scanf("%d",&n) && n)
{
int sg=0,flag=0;
while(n--)
{
scanf("%d",&tmp);
sg^=tmp;
if(tmp>1)
flag=1;
}
if((sg&&flag) || (!sg&&!flag))
printf("1\n");
else
printf("2\n");
}
return 0;
}