题解 P3185 【[HNOI2007]分裂游戏】
这题的思路是真的巧妙,不愧是我大HNOI的题目。。。
发现满足不了条件只有一种情况,就是所有的糖果都在最后一个碗里面。但是SG函数的使用必须要有一个确定的状态,我们不可能去把每一个碗里面的每一种状态都记下来,这不现实。
然后就是这题的巧妙之处了,我们将每一个糖果看作一个单独的游戏,就是将这个糖果从第i个位置移动到第n个位置,其实也就是一堆个数为的石子等你来取。
如果每一次只增加一个糖果的话就很好办了,但是是这是增加了两个糖果,相当于增加了又新加了一堆石子。换一个角度去想,新加的这一堆石子反正最后总是要取走的,转移后的状态便是后面两个糖果所构成的游戏的和。数据这么小,上SG就完事了。 代码