巴什博奕
有 \(N\) 个石子,两名玩家轮流行动,按以下规则取石子:
规定:每人每次可以取走 \(X(1 \le X \le M)\) 个石子,拿到最后一颗石子的一方获胜。
双方均采用最优策略,询问谁会获胜。
两名玩家轮流报数。
规定:第一个报数的人可以报 \(X(1 \le X \le M)\) ,后报数的人需要比前者所报数大 \(Y(1 \le Y \le M)\) ,率先报到 \(N\) 的人获胜。
双方均采用最优策略,询问谁会获胜。
- \(N=K\cdot(M+1)\) (其中 \(K \in \mathbb{N}^+\) ),后手必胜(后手可以控制每一回合结束时双方恰好取走 \(M+1\) 个,重复 \(K\) 轮后即胜利);
- \(N=K\cdot(M+1)+R\) (其中 \(K \in \mathbb{N}^+,0 < R < M + 1\) ),先手必胜(先手先取走 \(R\) 个,之后控制每一回合结束时双方恰好取走 \(M+1\) 个,重复 \(K\) 轮后即胜利)。
扩展巴什博弈
有 \(N\) 颗石子,两名玩家轮流行动,按以下规则取石子:。
规定:每人每次可以取走 \(X(a \le X \le b)\) 个石子,如果最后剩余物品的数量小于 \(a\) 个,则不能再取,拿到最后一颗石子的一方获胜。
双方均采用最优策略,询问谁会获胜。
- \(N = K\cdot(a+b)\) 时,后手必胜;
- \(N = K\cdot(a+b)+R_1\) (其中 \(K \in \mathbb{N}^+,0 < R_1 < a\) ) 时,后手必胜(这些数量不够再取一次,先手无法逆转局面);
- \(N = K\cdot(a+b)+R_2\) (其中 \(K \in \mathbb{N}^+,a \le R_2 \le b\) ) 时,先手必胜;
- \(N = K\cdot(a+b)+R_3\) (其中 \(K \in \mathbb{N}^+,b < R_3 < a + b\) ) 时,先手必胜(这些数量不够再取一次,后手无法逆转局面);
Nim 博弈
有 \(N\) 堆石子,给出每一堆的石子数量,两名玩家轮流行动,按以下规则取石子:
规定:每人每次任选一堆,取走正整数颗石子,拿到最后一颗石子的一方获胜(注:几个特点是不能跨堆、不能不拿)。
双方均采用最优策略,询问谁会获胜。
记初始时各堆石子的数量 \((A_1,A_2,\dots,A_n)\) ,定义尼姆和 \(Sum_N = A_1 \oplus A_2 \oplus \dots \oplus A_n\) 。
当 \(\pmb{ Sum_N = 0 }\) 时先手必败,反之先手必胜。
Nim 游戏具体取法
先计算出尼姆和,再对每一堆石子计算 \(A_i \oplus Sum_N\) ,记为 \(X_i\) 。
若得到的值 \(X_i<A_i\) ,\(X_i\) 即为一个可行解,即剩下 \(\pmb X_i\) 颗石头,取走 \(\pmb {A_i - X_i}\) 颗石头(这里取小于号是因为至少要取走 \(1\) 颗石子)。
Moore’s Nim 游戏(Nim-K 游戏)
有 \(N\) 堆石子,给出每一堆的石子数量,两名玩家轮流行动,按以下规则取石子:
规定:每人每次任选不超过 \(K\) 堆,对每堆都取走不同的正整数颗石子,拿到最后一颗石子的一方获胜。
双方均采用最优策略,询问谁会获胜。
把每一堆石子的石子数用二进制表示,定义 \(One_i\) 为二进制第 \(i\) 位上 \(1\) 的个数。
以下局面先手必胜:
对于每一位, \(\pmb{One_1,One_2,\dots ,One_N}\) 均不为 \(\pmb{K+1}\) 的倍数。
Anti-Nim 游戏(反 Nim 游戏)
有 \(N\) 堆石子,给出每一堆的石子数量,两名玩家轮流行动,按以下规则取石子:
规定:每人每次任选一堆,取走正整数颗石子,拿到最后一颗石子的一方出局。
双方均采用最优策略,询问谁会获胜。
- 所有堆的石头数量均不超过 \(1\) ,且 \(\pmb {Sum_N=0}\) (也可看作“且有偶数堆”);
- 至少有一堆的石头数量大于 \(1\) ,且 \(\pmb{Sum_N \neq 0}\) 。
阶梯 - Nim 博弈
有 \(N\) 级台阶,每一级台阶上均有一定数量的石子,给出每一级石子的数量,两名玩家轮流行动,按以下规则操作石子:
规定:每人每次任选一级台阶,拿走正整数颗石子放到下一级台阶中,已经拿到地面上的石子不能再拿,拿到最后一颗石子的一方获胜。
双方均采用最优策略,询问谁会获胜。
对奇数台阶做传统 \(\pmb{\tt{}Nim}\) 博弈,当 \(\pmb{Sum_N=0}\)** 时先手必败,反之先手必胜。**