n堆石子
每次操作可以从一堆石子中取任意个
不能操作者输
ans:把所有石子数量xor,为0先手必败,反之后手必败
必胜状态:存在一种方案走到对方的必败态
必败状态:所有方案都会走到对方的必胜态
现在证明结论
若莫得石子,xor=0,先手必败
若当前xor为0,那么操作一次xor就必定不再是0
若当前xir不为0,那么一定存在一种那石子方案使得xor变成0
1 3 4=》6
1 3 2=》0
xor最高位的1,找到一个数的这一位是1
将这个数变为x xor y
就是把这个数操作一下,就可以直接影响xor值
sg函数
当sg=0时,先手必败,否则先手必胜
设状态a为先手操作一部之后可能变成的状态集合
a={b,c,d,.....}
sg(a)=mex{sg{b},sg{c},...}