#博弈论#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;
}