题解:
$n=1$或$n=2$时,先手直接取完,先手必胜;
$n=3$时,先手必败;
$n>3$时,若$n$为偶数,先手在一个位置上取了一个/两个,后手就在对称位置上取一个/两个。
若$n$为奇数,第一轮先手在一个位置上取了一个/两个,后手就在对称位置上取两个/一个,接下来按对称取。
所以总结一下,
先手只在$n<=2$时能赢。
代码:
#include<cstdio> int n; int main() { while(scanf("%d",&n)) { if(!n)break; if(n<=2)puts("Alice"); else puts("Bob"); } return 0; }