BZOJ-2463: [中山市选2009]谁能赢呢?

[文章目录]

Description

小明和小红经常玩一个博弈游戏。给定一个n×n的棋盘,一个石头被放在棋盘的左上角。他们轮流移动石头。每一回合,选手只能把石头向上,下,左,右四个方向移动一格,并且要求移动到的格子之前不能被访问过。谁不能移动石头了就算输。假如小明先移动石头,而且两个选手都以最优策略走步,问最后谁能赢?

直接蒙结论。奇偶判断。
如果n为偶数的时候,发现棋盘能够被1*2的小矩形覆盖,所以每次进入了一个小矩形都可以走到另一端。并且走过的小矩形一定不能再走。奇数的时候,发现去掉一个格子能够被覆盖,同理。

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int n;
int main()
{
    while(~scanf("%d",&n))
    {
        if(!n) break;
        if(n&1) puts("Bob");
        else puts("Alice");
    }
    return 0;
}

发表评论

邮箱地址不会被公开。 必填项已用*标注