POJ 1704

简介:

这题好像nim博弈的变形 主要在于找到变成奇异局势的方式,那么可以想到最近的两个棋子移动到相邻 如果n为奇数那么把0点也看作是一个棋子 如果变完后那么后手只需要模仿先手就可以赢了 所以之前是nim博弈

#include <iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

int main()
{
    int t,n,a[1010];
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d",&n);
        for(int i=0; i<n; i++)
            scanf("%d",&a[i]);
        if(n&1)
            a[n++]=0;
        sort(a,a+n);
        int ans=0;
        for(int i=n-1; i>0; i-=2)
            ans^=a[i]-a[i-1]-1;
        if(ans)
            puts("Georgia will win");
        else
            puts("Bob will win");

    }
    return 0;
}


目录
相关文章
|
算法框架/工具
POJ 2262 Goldbach's Conjecture
POJ 2262 Goldbach's Conjecture
133 0
F-POJ-3414 Pots
POJ-3414 Time Limit:1000 ms Memory Limit:65536 K Description You are given two po...
994 0
|
算法 数据建模 机器学习/深度学习
|
机器学习/深度学习
|
SDN
poj 2886 Who Gets the Most Candies?
点击打开poj 2886 思路: 求因子数+单点更新 分析: 1 题目的意思是有n个人构成一个环,刚开始是第k个人先出来。每个人有一个名字和数值A,如果A为正数,那么下一个出去的人是他左边的第A个人,如果是负数那么出去的将是右边的第A个人 2 这么我们要注意一下,因为n个人是围城一圈,那么左边就是顺时针方向,右边就是逆时针方向 3 那么我们就可以来推没一次出去的人的在剩下中是第几个。
778 0