HDU1564 Play a game

来源:互联网 发布:农村淘宝宣传片下载 编辑:程序博客网 时间:2024/06/07 08:22

题目意思是两个人玩游戏,给一个n*n 的方格阵,要求把石头从第一个格子起竖或横移动到相邻的一个没到过的格子,问先手赢还是后手赢。
这道题开始好像没什么思路,就从必胜状态和必败状态,就从n=3、n=4这样的开始分析,假设第一个格子是必胜或者必败状态,结果发现这样一看好像是可以由小到大递推的,再好好看一下格子的分布情况,发现跟奇偶性有关,就做出来了。

#include <algorithm>#include <bitset>#include <cassert>#include <climits>#include <cmath>#include <cstdio>#include <cstdlib>#include <cstring>#include <deque>#include <iomanip>#include <iostream>#include <map>#include <numeric>#include <queue>#include <set>#include <stack>#include <string>using namespace std;typedef long long ll;int main(){    int n;    while (scanf ("%d",&n)!=EOF){        if (n==0) break;        if (n%2==1) printf("ailyanlu\n");        else printf("8600\n");    }    return 0;}