![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
博弈论
mαgic
这个作者很懒,什么都没留下…
展开
-
巴什博弈
巴什博弈有一堆数量为n的石子,每个人每次可以取1~m颗石子,最先取完的一方胜利。结论若n%(m+1)==0则先手必败,反之先手必胜。(以下所有均以双方足够明智作为前提)巴什博弈为博弈论中最基础的部分,据此可以推算出博弈论中的通用方法:对于每个点,可以分为两种属性,分别为:P点: 状态处于该点时将要进行操作的玩家必定失败;N点: 状态处于该点时将要进行操作的玩家必定成功。存在三个定理:1. 所有终结点都是必败点P(上游戏中,轮到谁拿牌,还剩0张牌的时候,此人就输了,因为无牌可取);2.原创 2021-01-07 00:33:14 · 1116 阅读 · 0 评论 -
斐波拉契博弈
斐波拉契博弈:有一堆个数为n的石子,游戏双方轮流取石子,同时有一下规则:1.先手不能直接把石子全部取完;2.除了第一次,之后每次取石子的数目只能在1到上次取石子数的两倍之间(包括边界)。无石子可取即为失败。结论:若初始时石子数为斐波拉契数则先手为必败态,反之先手必胜。证明:主要可以看博客https://blog.csdn.net/ACM_cxlove/article/details/7835016。...原创 2021-01-06 01:59:58 · 108 阅读 · 0 评论 -
威佐夫博弈(HDU1527)
威佐夫博弈主要内容:有两堆各若干个物品,两个人轮流从任一堆取至少一个或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。主要思路:将两堆物品中较少的一堆数量记作a,另一个记作b。存在必败态(奇异点):(0,0)、(1,2)、(3,5)、(4,7)、(6,10)、(8,13)、(9,15)、(11,18)、(12,20)…存在固定公式a ==(b-a)(sqrt(5.0+1)/2.0)时先手为必败态(奇异点)。具体代码: int aa,bb; cin>>原创 2020-12-31 23:31:34 · 142 阅读 · 0 评论 -
Nim博弈
目前有任意堆石子,每堆石子个数也是任意的,双方轮流从中取出石子,规则如下: ①每一步应取走至少一枚石子;每一步只能从某一堆中取走部分或全部石子; ②如果谁取到最后一枚石子就胜。设(a,b,c,d…)为每堆石子的个数(石子个数>=0),甲乙两人游戏,且甲先行。若起始态a⊕b⊕c⊕… = 0,则该状态为必败态,反之为必胜态。Nim博弈结论证明:明显当a1=a2=……=an = 0的时候成立,(0)为必败态。当(a1,a2……an)不全等于0的时候,有2种情况: ① k = a1⊕a2⊕原创 2021-01-02 00:57:04 · 598 阅读 · 1 评论 -
SG函数
SG函数主要性质:1、所有终结点都是必败点;2、必败点P无论怎么操作只能进入必胜点N;3、至少有一种操作使可以从必胜点N到达必败点P。其中定义mex(minimal excludant)运算,其为集合运算,即为计算该集合中不存在的最小非负整数。例如: mex({0,2,3}) = 1; mex({1,2,3,4,5}) = 0;而SG[x]含义即为在x的状态下有多少个后继状态,对所有后继状态的SG值进行mex运算,结果即为SG[x]的值。多个SG游戏的最终结果为每个SG函数值的异或和,异或和原创 2021-01-02 01:03:45 · 785 阅读 · 0 评论