HDU 3032 Nim or not Nim? (sg函数求解)
题目大意:
Alice和Bob轮流取N堆石子,每堆S[i]个,Alice先,每一次可以从任意一堆中拿走任意个石子,也可以将一堆石子分为两个小堆。先拿完者获胜。(1 ≤ N ≤ 10^6, 1 ≤ S[i] ≤ 2^31 - 1)
解题思路:
对于一个给定的有向无环图,定义关于图的每个顶点的Sprague-Grundy函数g如下:g(x)=mex{ g(y) | y是x的后继 },这里的g(x)即sg[x]
例如:取石子问题,有1堆n...
分类:
其他好文 时间:
2014-07-06 00:44:38
阅读次数:
339
博弈,一般就是,sg啊,dfs极大极小搜索啊,dp啊,找规律啊....HDU 1847 Good Luck in CET-4 Everybody!(SG水题)预处理一下,不然会RE。HDU 4559涂色游戏这个题,非常棒...看了别人的思路,n个1个格子的sg为n%2,我们利用sg函数处理出2*i的...
分类:
其他好文 时间:
2014-06-28 19:36:18
阅读次数:
295
HDU 1079 Calendar Game (博弈论-sg)
题目大意:
给定日期,轮流来,可以在日期的月上加1,或者在天数上加1 ,如果约数上加1无效,自动转化为在天数上加1,轮流来,问先手是否赢?
解题思路:
这很明显是道博弈题,对于SG的性质定义
必胜态记为P,用数值0表示,当且仅当其后继都是 N,也就是SG()>0
必输态记为N,用数值1表示,当且仅当其后继存在P,也就是SG()=0
对于这题,完全没必要这样用SG去推理,可以结合DP,用记忆化搜索划分为子问题,每一步取对自己最优的。...
分类:
其他好文 时间:
2014-06-22 22:10:22
阅读次数:
253
poj 1079 Calendar Game(博弈论 SG)...
分类:
其他好文 时间:
2014-06-22 21:52:49
阅读次数:
162
【原题】
1874: [BeiJing2009 WinterCamp]取石子游戏
Time Limit: 5 Sec Memory Limit: 162 MB
Submit: 334 Solved: 122
[Submit][Status]
Description
小H和小Z正在玩一个取石子游戏。 取石子游戏的规则是这样的,每个人每次可以从一堆石子中取出若干个石子,每次...
分类:
其他好文 时间:
2014-06-22 19:33:40
阅读次数:
268
树的删边游戏。。由于题目的特殊性,我们只需计算环的边数值。若为偶环,则直接把环的根节点置0。若为奇环,则留下一条边与根结点相连,并那它们的SG置0;注意的是,两个点也可构成环,因为允许重边。所以,我们只需求点双连通分量,并判断分量中边的数量即可。然后DFS求树的SG值。 1 #include ...
分类:
其他好文 时间:
2014-06-15 10:43:23
阅读次数:
285
利用后继节点的SG值求出当前的SG值。在当前任意一个BLANK插入一个x后,分成两段,于是,看成两段的NIM,异或和,按SG的定义求出当前的SG值即可。
1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 ...
分类:
其他好文 时间:
2014-06-09 13:37:24
阅读次数:
235
翻硬币游戏,纯。。注意要判重 1 #include 2 #include 3 #include 4
#include 5 using namespace std; 6 7 int a[105],n; 8 9 int sg(int x){10 int
tmp=x,cnt=0;11 ...
分类:
其他好文 时间:
2014-06-08 20:53:49
阅读次数:
266
也算是一道模板题吧,只需按照SG函数的定义求出每个值的SG,然后异或就可以了。 1 #include
2 #include 3 #include 4 5 using namespace std; 6 const int N=10005; 7 int sg[N];
8 bool vis[N];...
分类:
其他好文 时间:
2014-06-04 17:27:21
阅读次数:
200
题意:给定了每个正面朝上的硬币的位置,然后每次可以翻1,2,3枚硬币,并且最右边的硬币开始必须是正面朝上的。分析:约束条件6:每次可以翻动一个、二个或三个硬币。(Mock
Turtles游戏)初始编号从0开始。当N==1时,硬币为:正,先手必胜,所以sg[0]=1.当N==2时,硬币为:反正,先手必...
分类:
其他好文 时间:
2014-06-04 16:28:21
阅读次数:
222