题意:n 个硬币围成一圈,每人一次可以拿一个或者相邻的两个,最后一个拿的人获胜。
n>3 时,后手一定获胜,因为他只要按照先手拿的对称着拿就可以,很经典的博弈题。
#include<cstdio> #include<cstring> #include<cmath> #include<iostream> #include<algorithm> #include<vector> #include<map> #include<queue> #include<stack> #include<string> using namespace std; int main() { //freopen("a.txt", "r", stdin); int n; while(cin>>n && n){ if(n<3) cout <<"Alice"<< endl; else cout << "Bob" << endl; } return 0; }