Link 考虑模仿策略。 如果(nle2)那么先手必胜。 如果(n=3)那么先手必败。 当(nge3)时, 若(n)是偶数,则后手每次取先手对称位置的棋子,先手必败。 若(n)是奇数,后手取(3-)先手取的棋子数,然后就转化为了上一种情况,先手必败。
#include<cstdio> int main(){for(int n;scanf("%d",&n),n;) puts(n>2?"Bob":"Alice");}