先解释一下威佐夫博弈吧:
所谓威佐夫博弈,是ACM题中常见的组合游戏中的一种,大致上是这样的:
有两堆石子,不妨先认为一堆有 10,另一堆有 15 个,双方轮流取走一些石子,合法的取法有如下两种:
1、在一堆石子中取走任意多颗;
2、在两堆石子中取走相同多的任意颗;
约定取走最后一颗石子的人为赢家,求必胜策略。
两堆石头地位是一样的,我们用余下的石子...
分类:
其他好文 时间:
2014-08-12 00:48:03
阅读次数:
211
天资愚笨啊,网上的一大堆没看懂。。。。。。
总结百科的方法为:
1.a==b
同时减去a 得到0,0
2.a==a_k b>b_k
b -(b-b_k)
3.a==a_k b
同时拿走a_k-a_(b-a_k)
得到 a_(b-a_k) a_(b-a_k) + b-a_k
4.a>a_k b==b_k
...
分类:
其他好文 时间:
2014-08-12 00:41:03
阅读次数:
173
题目来源:HDU 2177 取(2堆)石子游戏
题意:中文
思路:判断是否是必败态就不说了 做过hdu1527就知道了
现在如果不是必败态 输出下一步所有的必败态 题目要求先输出两堆都取的方案
首先 a = b 直接2堆取完
a != b 因为bi = ai+i 现在知道ak 和 bk 那么 k = bk-ak 得到k 求出 aj 和 bj 如果ak-aj == bk-bj && ak-...
分类:
其他好文 时间:
2014-08-11 18:02:32
阅读次数:
244
题目来源:HDU 1527 取石子游戏
题意:中文
思路:威佐夫博弈 必败态为 (a,b ) ai + i = bi ai = i*(1+sqrt(5.0)+1)/2 这题就求出i然后带人i和i+1判断是否成立
以下转自网上某总结
有公式ak =[k(1+√5)/2],bk= ak + k (k=0,1,2,…,n 方括号表示取整函数) 其中出现了黄金分割数(1+√5)/2...
分类:
其他好文 时间:
2014-08-10 21:43:40
阅读次数:
356
取石子(八)
时间限制:1000 ms | 内存限制:65535 KB
难度:3
描述
有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。...
分类:
其他好文 时间:
2014-05-21 08:42:00
阅读次数:
524
ACM 威佐夫博弈 取(2堆)石子游戏 hdu2177 hdu1527进阶...
分类:
其他好文 时间:
2014-05-03 16:41:38
阅读次数:
244