ACM中的博弈论入门(一)POJ 2425 针对SG函数的理解

来源:互联网 发布:win10深度系统优化 编辑:程序博客网 时间:2024/05/22 04:28
参考【SG函数】的百度百科
SG函数:
定义mex(minimal excludant)运算,这是施加于一个集合的运算,表示最小的不属于这个集合的非负整数。例如mex{0,1,2,4}=3、mex{2,3,5}=0、mex{}=0。
题意,一个无环有向图,在其中放N个棋子。甲先走,轮流,每次按照路径走一次,无路可走者失败。


譬如 A——》B——》C——》D
A——》E
这个最后是把放棋位置的mex值,看作Nim博弈的一个堆值,同理做。
为什么能够同理呢?
如果A的mex值是K
根据mex的定义,则A的 后继 中【必然】包含了 0 to k-1 的所有值。
Nim 对 一个堆的操作, 就是 把 K 变成 任意的 0 to k-1
但还有一个问题是 , A的 后继 中【存在】 譬如 x, x>k
【解释】
x>k 则 x的后继中,根据定义,【必然】 存在 k
为了【必胜策略】 每次【对手把 k 调大】 自己 可以下一步 【调整回来】
局面保持不变。

故,此题等价于 Nim。


2016.7.8日:

SG函数

我们根据某种特征

称呼终结态为0

定义为N的态 可以自由转化为 定义为 0 to N-1 的态

0 0
原创粉丝点击