神奇的博弈题,显然n=1或2时,Alice胜,n>3时,一定bob胜,bob每次取的都是Alice取的的正对角的硬币,这样,若n为偶数,直接按照之前所说,bob每次取的数目与Alice一样,且是对角的位置。若n为奇数,则在bob的第一次去硬币的过程中,将剩下的硬笔数变成偶数,然后和之前的情况一样的取法。
#include<iostream>
using namespace std;
int main()
{
int n;
while(cin >> n && n != 0)
{
if(n < 3)
cout << "Alice" << endl;
else
cout << "Bob" << endl;
}
return 0;
}