摘要: 这个题目是一个典型的Anti_Sg。我也不知道为什么这么叫,呵呵,反正大家都这么叫,而且我也是听别人说,看别人的日志自己才知道的。题目的意思是给你不同颜色的石子,每次可以去一种颜色的石子若干个(至少为1),取完最后一颗石子的人获胜。由于对于同一种颜色的石子来说,可取的数量是任意的,所以在这个题目里面一个数所对应的SG函数值就是本身。首先我们定义一个数k为当前每一堆石子数量的异或值。对于必胜策略,有两种可能的情况。一。初始状态下,所有的石子堆中石子的个数全为1,且堆数为偶数。二。初始状态下,石子堆中石子的个数不全为1,且k不为0。对于第一种状态是显然的。下面来讨论一下第二种状态吧。初始状态下,因 阅读全文
posted @ 2013-10-16 22:12 092000 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 题目的意思是这样的,给定你若干堆石子,每次你可以从任一堆取出某些固定数量的石子,每次取完后必须保证没堆石子的数量不为0,谁无法操作了就算fail。刚刚开始看题目的时候有点也没有思路,甚至连Sg函数也没有听过。后来学习了一番,说说自己的想法吧。_________________有关SG函数的由来,性质及其我个人对sg函数的了解见下一篇日志。这个题目可以这样考虑,由于每次可取的数字是一个给定的集合,我们可以求出所有的数所对应的sg的函数值(我用的是dp,不过好像跟多人喜欢用记忆化搜)。由于博弈论里面的许多奇奇怪怪的定理,最终我们只要求出每一堆的石子数所对应的sg值的总共异或值ans,如果ans不等 阅读全文
posted @ 2013-10-16 21:55 092000 阅读(252) 评论(0) 推荐(0) 编辑