这里将简要介绍一下 Bash Game,Wythoff Game,Nimm Game。
Bash Game
- 问题模型:有一堆物品,数量为 \(n\),两个人轮流取,每次至少取 \(1\) 个,最多取 \(m\) 个。最后取光者胜。
- 结论:如果 \(n\bmod(m+1)=0\),则先手必败,否则先手必胜。
- 解释:如果 \(n\) 是 \(m+1\) 的倍数,那么无论先手取多少(比如 \(k\) 个),后手都可以取 \(m+1-k\) 个,使得剩下的物品数仍然是 \(m+1\) 的倍数。这样后手总能取走最后一个。如果不是倍数,先手可以取走一些使得剩下的是 \(m+1\) 的倍数,然后变成后手面对必败局面。
Wythoff Game
- 问题模型:有两堆物品,每堆分别有 \(a\) 和 \(b\) 个。两个人轮流取,每次可以从一堆中取任意个(至少 \(1\) 个),或者从两堆中同时取相同个数的物品(至少 \(1\) 个)。最后取光者胜。
- 结论:我们记局势为 \((a,b)\)(假设 \(a\le b\))。如果满足 \(a=\lfloor(b-a)\times\frac{sqrt(5)+1}{2}\rfloor\) 则先手必败,否则先手必胜。
- 解释:这个结论涉及黄金分割比。必败局势按照第一个坐标排序,第二个坐标是第一个坐标加上序号乘以黄金分割比。这些必败局势有规律地分布。
Nimm Game
- 问题模型:有 \(n\) 堆物品,每堆分别有 \(a_1,a_2,\cdots,a_n\) 个。两个人轮流从某一堆中取任意个物品(至少 \(1\) 个)。最后取光者胜。
- 结论:如果 \(a_1\oplus a_2\oplus\cdots\oplus a_n=0\),则先手必败,否则先手必胜。
- 解释:异或和为 \(0\) 的状态为必败状态。因为如果当前异或和不为 \(0\),先手总可以取走一些物品使得异或和变为 \(0\);而如果当前异或和为 \(0\),那么无论怎么取,都会使得异或和不为 \(0\)。这样,后手总是面临非 \(0\) 状态,先手总是面临 \(0\) 状态,直到最后先手取光。