2011年8月19日

HDU 2147 kiki's game 博弈

摘要: 一道很简单的博弈题,找出P状态和N状态的规律即可View Code /* * Author:lonelycatcher * Problem:HDU 2147 * Type:组合博弈 */#include <iostream>#include<stdio.h>#include<cstdlib>using namespace std;int n,m;int main(){ while(scanf("%d %d",&n,&m)) { if(n==0&&m==0)break; if(!(n&1)) { pr 阅读全文

posted @ 2011-08-19 21:48 lonelycatcher 阅读(198) 评论(0) 推荐(0) 编辑

HDU 1847 cet-4 组合博弈

摘要: 这道题也是一道简单的组合博弈题,状态图0 1 2 3 4 5 6 7 8 9.........P N N p N N p N N P........可以看出,所有3的倍数都是P状态的。。。View Code /* * Author:lonelycatcher * Problem:HDU 1847 * Type:简单组合博弈 */#include <iostream>#include<string.h>#include<string>#include<stdio.h>#include<cstdlib>using namespace st 阅读全文

posted @ 2011-08-19 20:22 lonelycatcher 阅读(219) 评论(0) 推荐(0) 编辑

HDU 1846 Brave Game 公平组合博弈

摘要: 最近学了组合博弈的内容挺有意思的,小时牛刀,AC,(*^__^*) 嘻嘻……0是P状态,从1~M是N状态(至少有一种方法可以进入P状态),m+1是p状态(只能进入N状态)。。。。推理可知,m+1的倍数都是P 状态方法一,简单推理:View Code /* * Author:lonelycatcher * Problem:hdu 1846 * Type:博弈 */#include <iostream>#include<stdio.h>#include<string.h>#include<stdlib.h>using namespace std;in 阅读全文

posted @ 2011-08-19 14:41 lonelycatcher 阅读(266) 评论(0) 推荐(0) 编辑

Game theory初步

摘要: 转自:http://www.cnblogs.com/Knuth/archive/2009/09/05/1561002.html游戏1l 有两个游戏者:A和B。l 有21颗石子。l 两人轮流取走石子,每次可取1、2或3颗。l A先取。l 取走最后一颗石子的人获胜,即没有石子可取的人算输。如果剩下1、2或3颗石子,那么接下来取的人就能获胜;如果剩下4颗,那么无论接下来的人怎么取,都会出现前面这种情况,所以接下来取的人一定会输;如果剩下5、6或7颗石子,那么接下来取的人只要使得剩下4颗石子,他就能获胜。0,4,8,12,……都是下一个取石子者的必败状态。现在有21颗石子,21除以4的余数是1,所以先 阅读全文

posted @ 2011-08-19 11:48 lonelycatcher 阅读(186) 评论(0) 推荐(0) 编辑

寻找必败态——一类博弈问题的快速解法

摘要: 转自:http://www.cnblogs.com/Knuth/archive/2009/09/05/1561005.html博弈是信息学和数学试题中常会出现的一种类型,算法灵活多变是其最大特点,而其中有一类试题更是完全无法用常见的博弈树来进行解答。 寻找必败态即为针对此类试题给出一种解题思路。 此类问题一般有如下特点: 1、博弈模型为两人轮流决策的非合作博弈。即两人轮流进行决策,并且两人都使用最优策略来获取胜利。 2、博弈是有限的。即无论两人怎样决策,都会在有限步后决出胜负。 3、公平博弈。即两人进行决策所遵循的规则相同。 以下题目都属于这一类: POJ1740 A New Stone Ga 阅读全文

posted @ 2011-08-19 11:47 lonelycatcher 阅读(443) 评论(0) 推荐(1) 编辑

博弈论(二):Sprague-Grundy函数

摘要: 转自:http://www.cnblogs.com/Knuth/archive/2009/09/05/1561007.html上一期的文章里我们仔细研究了Nim游戏,并且了解了找出必胜策略的方法。但如果把Nim的规则略加改变,你还能很快找出必胜策略吗?比如说:有n堆石子,每次可以从第1堆石子里取1颗、2颗或3颗,可以从第2堆石子里取奇数颗,可以从第3堆及以后石子里取任意颗……这时看上去问题复杂了很多,但相信你如果掌握了本节的内容,类似的千变万化的问题都是不成问题的。现在我们来研究一个看上去似乎更为一般的游戏:给定一个有向无环图和一个起始顶点上的一枚棋子,两名选手交替的将这枚棋子沿有向边进行移动 阅读全文

posted @ 2011-08-19 11:46 lonelycatcher 阅读(339) 评论(0) 推荐(0) 编辑

博弈论(一):Nim游戏

摘要: 转自:http://www.cnblogs.com/Knuth/archive/2009/09/05/1561008.html重点结论:对于一个Nim游戏的局面(a1,a2,...,an),它是P-position当且仅当a1^a2^...^an=0,其中^表示位异或(xor)运算。Nim游戏是博弈论中最经典的模型(之一?),它又有着十分简单的规则和无比优美的结论,由这个游戏开始了解博弈论恐怕是最合适不过了。Nim游戏是组合游戏(Combinatorial Games)的一种,准确来说,属于“Impartial Combinatorial Games”(以下简称ICG)。满足以下条件的游戏是I 阅读全文

posted @ 2011-08-19 11:45 lonelycatcher 阅读(452) 评论(0) 推荐(0) 编辑

导航