#博弈论#Poj 2484 A Funny Game

题目

(n)个石子排成一圈,每次可以取一个或相邻的一对,
取完为胜,问先手是否必胜


分析

无论先手如何取,后手都能模仿先手的取法。
比如说,当石子个数为奇数时先手取相邻的一对,后手可以将对面的那一个取掉,
先手取一个,后手可以将对面的那一对取掉,偶数同理
只有先手一次取完才能必胜


代码

#include <cstdio>
#include <cctype>
#define rr register
using namespace std;
inline signed iut(){
	rr int ans=0,f=1; rr char c=getchar();
	while (!isdigit(c)) f=(c=='-')?-f:f,c=getchar();
	while (isdigit(c)) ans=(ans<<3)+(ans<<1)+(c^48),c=getchar();
	return ans*f;
}
signed main(){
	for (rr int n;n=iut();)
	    puts(n<3?"Alice":"Bob");
	return 0;
}
原文地址:https://www.cnblogs.com/Spare-No-Effort/p/14621219.html