题意:n堆珠子,两个人每次都可以选一堆,取至少一个珠子,然后可以把剩下珠子分成任意两堆,也可以不分,给出初始局面,问先手是否可以赢。
题解:Nim博弈题,可以看一下 http://www.cnblogs.com/exponent/articles/2141477.html ,这道题多了分堆,不过并不影响结果。
#include <stdio.h>
int main() {
int n;
while (scanf("%d", &n) == 1) {
int res = 0, a;
for (int i = 1; i <= n; i++) {
scanf("%d", &a);
res ^= a;
}
if (res != 0)
printf("Win\n");
else
printf("Lose\n");
}
return 0;
}