【题目链接】 http://poj.org/problem?id=2484
【题目大意】
有n个石子摆成一圈,每次可以取走连着的两个石子或者一个石子,
当两个石子之间有空位的时候就不能当他们是连着的。判断先手胜负
【题解】
当局面处于对称的状态的时候,就是必败态,当先手取了一个或两个石子破环的时候,
后手一定可以选取一个石头或者两个石头使得形成一个对称的图形,因此当石子大于2是后手必胜。
【代码】
#include <cstdio> #include <algorithm> using namespace std; int n; int main(){ while(~scanf("%d",&n),n){ if(n<=2)puts("Alice"); else puts("Bob"); }return 0; }