IT民工
加油!
/*
g(0)=0,g(1)=1。
状态2的后继有0,1和(1,1),它们的SG函数值分别是0,1和0,
所以g(2)=2。状态3的后继有0,1,2和(1,2),它们的SG函数
值分别是0,1,2和3,所以g(3)=4。
状态4的后继有0,1,2,3,(1,3)和(2,2),它们的SG函数
值分别是0,1,2,4,5和0,所以g(4)=3。我们推测:对于所有
的k>=0,有g(4k+1)=4k+1;g(4k+2)=4k+2;g(4k+3)=4k+4;g(4k+4)=4k+3。
*/

#include <stdio.h>

int main()
{
    int T;
    scanf("%d", &T);
    while(T --)
    {
        int n, ans = 0, m;
        scanf("%d", &n);
        while(n --)
        {
            scanf("%d", &m);
            if(m % 4 == 0) ans ^= (m - 1);
            else if(m % 4 == 3) ans ^= (m + 1);
            else ans ^= m;
        }
        if(ans == 0) puts("Bob");
        else puts("Alice");
    }
    return 0;
}
posted on 2012-10-22 17:09  找回失去的  阅读(272)  评论(0编辑  收藏  举报