博弈论
概念讲解
Nim 游戏
n 堆石子,两人轮流取,每次从一堆中取任意个,取完者胜。
结论
先手必败 当且仅当 a1⊕a2⊕⋯⊕an=0
SG 函数
定义
SG(x)=mexSG(y)∣y 是 x 的后继状态
mex:最小的不属于集合的非负整数。
Sprague-Grundy 定理
多个独立游戏的 SG 值的异或和 = 合并游戏的 SG 值。
考点分析
初赛考查方式
- 选择题: Nim 游戏
- 编程题: 博弈问题
常见考点
例题精讲
例题 1:Nim 游戏
题目: 三堆石子 {3, 5, 7},先手是否必胜?
解答:
3⊕5⊕7=1=0,先手必胜。
练习题
- Nim 游戏先手必败的条件?
查看答案
Nim 游戏先手必败的条件:所有堆石子数的异或和为 0
a1⊕a2⊕⋯⊕an=0
如果异或和不为 0,先手必胜。
- SG 函数的定义?
查看答案
SG 函数的定义:
SG(x)=mexSG(y)∣y 是 x 的后继状态
其中 mex 表示最小的不属于集合的非负整数。
例如:mex0,1,3=2
- Sprague-Grundy 定理的内容?
查看答案
Sprague-Grundy 定理:
多个独立游戏的 SG 值的异或和 = 合并游戏的 SG 值
SG(G1⊕G2⊕⋯⊕Gn)=SG(G1)⊕SG(G2)⊕⋯⊕SG(Gn)
易错点
⚠️ 注意:
- 异或和为 0 先手必败
- SG 函数用 mex 计算
- 多游戏合并用异或
- 博弈论是高级内容