您的位置:首页 > 其它

【博弈学习】

2013-10-19 00:11 183 查看
『有些东西去学习只是因为喜欢而已,而有些东西学习却是因为需要,但是不管是那种如果去学,就好好学吧』

最近刚刚接触博弈题,题目慢慢积累中...

这边推荐一篇论文 : http://download.csdn.net/detail/u010619381/6427245 (《博弈-由感性认识到理性认识》张一飞)

HDOJ-1564 Play a game
思路 :先手赢的必胜状态是和n的奇偶有关,n是奇数先手输,n是偶数先手赢。

                                                     

HDOJ-1846 Brave Game

思路:经典巴什博弈 先手输的状态是n % (m+1) == 0

                                                     

HDOJ-1847 Good Luck in CET-4 Everybody!
思路 : 暴力找规律,会发现先手输的状态是n % 3 == 0

HDOJ-2147 kiki's game
思路 :暴力找规律,发现当且仅当n和m都是奇数的时候先手输

HDOJ-2516取石子游戏

思路 : 记忆话搜索去搜前几项,然后你会得到当n = 1 ,2 ,3,5,8,13...的时候先手输,即当n 为斐波那契数的时候先手输,然后打印出一张斐波那契数表比对下n即可。

HDOJ-1527 取石子游戏

和上面一题不同,这题是经典的威佐夫博弈,先手输的状态是 :a == (int )((b-a) * (1+sqrt(5)))/2 (a < b) 

关于威佐夫博弈网上相关介绍很多,这边给个链接吧 Click Here

HDOJ-2897 邂逅明下

巴什博弈改编的,多给了一个下界(经典巴什下界为1),但其实稍微推几项就发现他的先手必败状态范围只是扩大了而已 :[1,a]先手输,[a+1,b]先手赢,然后循环下去...

下面几题是LightOJ 上Nim分类里面的题目。

LightOJ 1186  Incredible Chess

棋盘上每一列有黑白两个棋子,然后可以上下走任意步数,不能跳跃,只要想清楚下决胜策略就可以转换为Nim做,把每一列两个棋子间隔的数量看成每一堆的石子。

LightOJ 1192  Left Right

Nim...原理类似上面一题

LightOJ 1247  Matrix Game

每一行的总和看成每一堆的石子数量

LightOJ 1253  Misere Nim

反Nim,注意下如果全部是1的话异或结果是0的情况下先手才赢,不是全1的话桶普通Nim, 具体原因还没搞明白 : (

学习中...

【未完待续...】
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ACM 博弈