HDU 2147 kiki‘s game 博弈论 巴什博弈 PN图

原题链接:HDU 2147 kiki’s game

题目描述

HDU 2147 kiki‘s game 博弈论 巴什博弈 PN图_第1张图片


题意

给一个n行m列的棋盘,最初,在期盼的右上角有一颗棋子,两个人轮流走,每次可以将棋子向左、向下或向左下移一格,将棋子移到左下角那个点的人获胜,问先手是否能胜。


思路

这是一个博弈论,最简单的我们可以直接模拟几组数据找规律,画一个PN图即可发现。
ps:PN图是指画出必胜态(P)和必败态(N)的位置,画PN图有三个规则:1、每个图的末状态均为必败点。2、所有能一步到达必败点的都是必胜点。3、所有能一步到达必胜点的都是必败点。

PN图如下:HDU 2147 kiki‘s game 博弈论 巴什博弈 PN图_第2张图片
很容易可以看出,只要有一个坐标是偶数的点是必胜点,横纵坐标均为奇数的点都是必败点。


代码解析

#include
using namespace std;
int main()
{
	int n,m;
	while(cin >> n >> m && (n || m))
	{
		if(n%2 && m%2)
			cout << "What a pity!" << endl;
		else
			cout << "Wonderful!" << endl;
	}
	
	return 0;
}

你可能感兴趣的:(每年一题)