简述

题目大意:

有一堆个数为n的石子,游戏双方轮流取石子,满足:

1)先手不能在第一次把所有的石子取完;

2)之后每次可以取的石子数介于1到对手刚取的石子数的2倍之间(包含1和对手刚取的石子数的2倍)。

约定取走最后一个石子的人为赢家,求必败态。

结论:当石子为斐波那契数的时候, 先手必败. 反之, 先手必胜.

证明

这是一个跟SG函数无关的博弈, 但却充分的利用了斐波那契数列的性质, 并且我们可以由很多博弈的证明看出,数学归纳法是是十分重要的, 这里的斐波那契数列结论证明也用到了数学归纳法.
1.先看看石子数为斐波那契数的时候, 为何先手必败.
我们先讨论小部分, 当 石子数 = F(1), F(2), F(3)的时候, 命题成立(先手必败)(可以自己手推出来).
当石子数大于3的时候, 我们设石子数为n, 并且由数学归纳法步骤,先假设石子数小于n的时候, 结论即命题成立.
给出一个小性质: F(n-1) = F(n-2) + F(n-3) < F(n-2) * 2
这样我们就可以知道, 当我们将F(n) 分成 F(n-1) + F(n-2)两堆石子时是成立的. 因为上面那个小性质可得,
先手如果先取的石子数>=F(n-2)的话, 后手可以直接取完剩下的所有石子( <=F(n-1) ), 先手败.
所以先手只能先在F(n-2)里面取. 那么由于n-2 < n, 那么根据我们的假设, 后手一定能最后取完F(n-2)这一
堆, 那么又根据定义n-1 < n , F(n-1)也是先手必败. 那么当后手取完F(n-2)的时候, 先手如果不能一下子将F(n-1)取完的话, 那么就转化为F(n-1)的游戏, 先手必败.
那么先手只能眼睁睁的看着F(n-2)被后手取完, 想尽设法的让自己一次性取完剩下的F(n-1). 那么先手想让自己一次性取完, 也就要求了前面后手最后一次取完的时候取的尽量多, 这样自己取的空间才大. 那么很容易可以得到, 后手只能最多取 2/3F(n-2) , 因为先手第一次取 F(n-2)/3 的话, 后手可以用 2/3F(n-2) 结束F(n-2)堆. 如果说, 先手第一次取的比F(n-2)/3 小, 那么后手无法第一次就取完, 最后由后手取完的时候拿的石子数目一定没有 2/3F(n-2) 多(多续了几回合, 石子数目只会变少). 若大于F(n-1)/3的话, 后手虽然能马上取完F(n-2)这一堆, 先手取了大于F(n-2)/3, 那么后手取的就比 2/3F(n-2) 更少了.
所以综上先手只能最多取到 2/3F(n-2) * 2 = 4/3 F(n-2). 但是事实上,这个数字比F(n-1)要小.为什么要小呢? 4/3 F(n-2) < F(n-1) 等价于 4F(n-2) < 3F(n-1) . 把 F(n-1) 替换成 F(n-2) + F(n-3), 把F(n-2)消掉,就可以得到 F(n-2) < 3F(n-3). 由之前那个小性质可以得到这个成立. 那么先手仍然无法第一次就取完F(n-1) ,那么就转化为F(n-1)的独立游戏, n-1 < n, 由假设可得先手必败.
综上所有, F(n)时, 先手仍然必败. 因为讨论了小情况作为递推,并且讨论了任意斐波那契数F(n), 由数学
归纳法得出, 当石子为斐波那契数的时候, 先手必败.

2.怎么得出若不是斐波那契数, 先手必胜.
齐肯多夫定理:点这里.
这个定理告诉我们任何正整数都可以表示为若干个不连续的斐波那契数之和.
那么设某非斐波那契数 n = F(N1) + F(N2) + F(N3)…(设N1 < N2 < N3…). 先手如何获胜? 先手只需要 先取F(N1)个,因 为N2 > N1 且N1, N2不连续, 那么F(N2) > 2 * F(N1) ( F(N2) = F(N2 - 1) + F(N2 - 2), 因为N1N2不连续, 所以F(N1)<= F(N2-2) ). 所以后手无法马上取完F(N2), 这个时候就相当于后手变成了拿F(N2)的先手, 那么由之前的证明可得,F(N2)最后一定是被原来的先手(在这里已经转换为后手了)取完,
因为后手又拿不完F(N3), 如此往复,最后一定是被原来的先手(在这里已经转换为后手了)取完.

所以综上, 斐波那契数先手必败, 反之先手必胜.

趣味博弈论——斐波那契博弈相关推荐

  1. 博弈论-斐波那契博弈

    1.斐波那契博弈是另种类型的博弈,这种博弈要求的条件是(1):博弈者还是两个人,n个物品(2)先手在第一次不能取完所有的物品,但是至少取走一个物品.(3)以后的每一个回合,每次取走的物品至多是上一个人 ...

  2. 博弈论基础知识: 巴什博奕+斐波那契博弈+威佐夫博奕+尼姆博弈(及Staircase)

    博弈论基础知识: 巴什博奕+斐波那契博弈+威佐夫博奕+尼姆博弈(及Staircase) 转载自: http://tieba.baidu.com/p/1474319443 http://blog.sin ...

  3. 【小组专题二:博弈论入门综述(1)】NP状态 | SG函数 | 巴什博奕、威佐夫博弈、斐波那契博弈、Nim游戏、SJ定理

    博弈论综述[1] 前言 博弈与博弈论 博弈树 NP状态 SG函数(Sprague-Grundy) Sprague-Grundy Theorem 巴什博奕 Bash Game 威佐夫博弈 扩展威佐夫博弈 ...

  4. 博弈论(巴什博奕,威佐夫博弈,尼姆博弈,斐波那契博弈)

    一.  巴什博奕(Bash Game): A和B一块报数,每人每次报最少1个,最多报4个,看谁先报到30.这应该是最古老的关于巴什博奕的游戏了吧. 其实如果知道原理,这游戏一点运气成分都没有,只和先手 ...

  5. 数学基础(四)博弈论(巴什博弈~威佐夫博弈(黄金分割率)~尼姆博奕~斐波那契博弈~SG函数模板)

    一.巴什博弈 1.问题模型 只有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个,最后取光者得胜. 2.解决思路: 当n=m+1时,由于一次最多只能取m个,所以无论先取者拿走多 ...

  6. 基础博弈论(巴什博奕、斐波那契博弈、威佐夫博奕、尼姆博奕)

    [前言] 今天才算是搞明白了(??)最基本的四种博弈 [小结] 1.巴什博奕(Bash Game) 一堆中取石子,两个人轮流取石子,每次取石子量至少为1,至多为m,先取完者胜利. 当n%(m+1)== ...

  7. BZOJ2275[Coci2010]HRPA——斐波那契博弈

    题目描述 N个石子,A和B轮流取,A先.每个人每次最少取一个,最多不超过上一个人的个数的2倍. 取到最后一个石子的人胜出,如果A要有必胜策略,第一次他至少要取多少个. 输入 第一行给出数字N,N< ...

  8. 四种基础博弈 巴什博奕+威佐夫博奕+斐波那契博弈+K倍博弈

    博弈论(Game Theory) 博弈论是指研究多个个体或团队之间在特定条件制约下的对局中利用相关方的策略,而实施对应策略的学科.有时也称为对策论,或者赛局理论,是研究具有斗争或竞争性质现象的理论和方 ...

  9. HDU 2516 取石子游戏 斐波纳契博弈

    斐波纳契博弈: 有一堆个数为n的石子,游戏双方轮流取石子,满足: 1)先手不能在第一次把所有的石子取完: 2)之后每次可以取的石子数介于1到对手刚取的石子数的2倍之间(包含1和对手刚取的石子数的2倍) ...

最新文章

  1. Mac~Terminal终端操作命令、vim操作命令、mac系统快捷键
  2. UVA 11995 I Can Guess the Data Structure! STL
  3. 区块链世界中的IOTA:它是什么样的存在?
  4. 简单说说:JavaSE、JavaEE、JavaME这三大体系
  5. boost::hana::detail::decay用法的测试程序
  6. Vim功能键整理(图片来自mooc)
  7. aix shell脚本 运行java_Linux中执行shell脚本的4种方法总结
  8. 信息学奥赛一本通(2030:【例4.16】找素数)
  9. 怎么在Android布局里面写下拉框,Android CoordinatorLayout(六) 加入下拉功能
  10. swift3.0 coreData的基本使用,简单实现增删改查
  11. Svn安装与整合Apache
  12. HTML:学习笔记之meta标签详解
  13. 同步与互斥的基本原理
  14. 微信JS SDK网页接口
  15. 阵列信号处理——研究背景与现状
  16. OpenCV图像处理之直方图
  17. 深度测评小程序跨端开发框架
  18. Effective-Java 检查参数有效性
  19. 算法度量方法——时间复杂度及空间复杂度
  20. mendeley引用参考文献不显示_【参考文献管理工具-1】使用Mendeley在Word中插入引用与参考文献...

热门文章

  1. 微软VS硬伤 - 未能起用约束集
  2. mysql查询每行重复_MySQL查询返回重复的行
  3. 【ITPM】TW1:ISchool 项目前期分析说明书
  4. 微信新升级?这2个功能是你们期盼的吗?
  5. viewer.js插件简单使用说明
  6. Java基础知识——IO流
  7. 研究云计算中调度算法遇到的相关概念
  8. 笔记 -- 时间复杂度 log2n
  9. 推荐5款干净又实用的软件
  10. 微信小程序,大佬救我!!!