巴什博奕

来源:互联网 发布:relex软件 编辑:程序博客网 时间:2024/05/21 06:47

好几个星期前看的东西了。现在才写。

巴什博奕:
一堆n个物体,2个人从中轮流取,每次必须取1~m个(边界条件可取到),最后取完者得胜。

结论:当且仅当n%(m+1)==0时,后者必胜。

思路:
1.n=m+1时,后者获胜。
2.令n=(m+1)r+s (1<=s<=m) 先手取s,后手取x,则先手取m+1-x,(这个值肯定在1~m之间),使得n=(m+1)(r-1),之后只要继续维护n为m+1的倍数,直到1的情况,此时后手(即最开始的先手)胜利。

变形:条件不变,最后取完者输。
结论:当且仅当(n-1)%(m+1)==0 时,后手必赢。

思路:
1.当n=m+2时,后手必赢。
2.若n=(m+1)r+1,则先手取x个,后手取m+1-x个,使局面变成n=(m+1)(r-1)+1。继续维护,直至局面变成1。后手胜利。
可以证明当n=(m+1)r+mod(mod>=2)时,先手总存在一种策略使得n=(m+1)r+1,此时后手(即最开始的先手)胜利。