Nim博弈
定义:
- 给定n堆物品,第i堆有Ai个。
- 轮流取任意个
- 无法取的人判负
Nim游戏不存在平局, 只有先手必胜和先手必败两种情况
定理
NIM博弈先手必胜,当且仅当A1xorA2xor...An=0
下证
- 当上式成立, 若异或和x的最大为1为k位, 则存在某个数k位为1, 则从这堆中取Aixor x,则原式异或和为0.
- 当上式不成立, 则若取完之后Ai变为Ai′有异或和为0, 则根据消去律可得Ai=Ai′,矛盾.
公平组合游戏ICG
有向图游戏
- 给定有向图, 起点处有一个棋子
- 两名玩家轮流移动
- 不能移动判负
所有的ICG游戏都可以转化为一个有向图游戏, 把一个局面缩成一个点即可
Mex运算
定义:
mex(S)=xmin(x∈N,x∈S)
SG函数
定义:
SG(u)=mex(SG(j)),(u→j)
对游戏G定义SG(G)=SG(s)
- 某局面SG>0则必胜
- 某局面SG=0则必败
- 整个游戏与局面判法一致
- 若是若干个游戏, 则若干个游戏的SG异或和=0为负,大于0必胜(证明同Nim游戏)