题解:P6665 [清华集训 2016] Alice 和 Bob 又在玩游戏
Acheron_RBM · · 题解
首先,我们知道题目意思等价于:删除节点
而 Green Hackenbush on tree 的一次合法操作是:移除任意一条不与地面相连的线段,此时次线段以上的子树都会被移除。
我错了,但是真的是(数值)等价的,我是看代码等价就断言的。
首先考虑把原图的点换成边,边换成点,然后再把整棵树倒过来。
此时,若在原图中的操作为:删除节点
新图就是切断对应
这样的一个新图可以根据下面的 Colon Principle 定理变成一个 bamboo,于是这两种游戏数值等价。
而 Green Hackenbush on tree 可以做到时间空间复杂度都是线性,本题自然可以。
所用定理我就不抄论文了,见 《Game Theory》 或者这个翻译。
然后我突然发现翻译讲的有点不清不楚的,我简述一下核心定理(Colon Principle):
定义 bamboo 图为 Green Hackenbush on tree 图里面树退化成链的形态。
设
设
定义连接操作:
其中
而定理内容是:
若
感性理解这个定理内容,实际上就是把一个树变成了一个链。
这个定理想要证明的是:一颗树
根据 SG 函数的定义感性理解,由于 SG 函数是局面 mex,所以我们不关心树的具体形态结构,我们关心的是还有多少点可以切掉。
而对于一个 bamboo 图,他的 SG 函数值就是等于高度。