五个海盗抢到了100颗宝石,每一颗都一样大小和价值连城。他们决定这么分: 抽签决定自己的号码(1、2、3、4、5)
来源:互联网 发布:2016上半年网络流行语 编辑:程序博客网 时间:2024/04/20 03:59
五个海盗抢到了100颗宝石,每一颗都一样大小和价值连城。他们决定这么分:
抽签决定自己的号码(1、2、3、4、5)
首先,由1号提出分配方案,然后大家表决,当且仅当超过半数的人同意时,
按照他的方案进行分配,否则将被扔进大海喂鲨鱼
如果1号死后,再由2号提出分配方案,然后剩下的4人进行表决,
当且仅当超过半数的人同意时,按照他的方案进行分配,否则将被扔入大海喂鲨鱼。
依此类推
条件:每个海盗都是很聪明的人,都能很理智地做出判断,从而做出选择。
问题:第一个海盗提出怎样的分配方案才能使自己的收益最大化?
说明:如果你是第一次看到这种题,并且以前从来没有见过类似的题型,
并且能够在半个小时之内做出答案,说明你的智力超常..)
分析:(反向推理)
2号和3号有积极性让1号死,以便自己得到更多。所以,1号无奈之下,可能只有自己得0,而给2和3各50颗。但事实证明,这种做法依然不可行。为什么呢?
因为我们要先看4号和5号的反应才行。很显然,如果最后只剩下4和5,这无论4提出怎样的方案,5号都会坚决反对。即使4号提出自己要0,而把100颗钻石都给5,5也不会答应――因为5号愿意看到4号死掉。这样,5号最后顺利得到100颗钻石——因此,4的方案绝对无法获得半数以上通过,如果轮到4号分配,4号只有死,只有死!
由此可见,4号绝对不会允许自己来分。他注定是一个弱者中的弱者,他必须同意3号的任何方案!或者1号2号的合理方案。可见,如果1号2号死掉了,轮到3号分,3号可以说:我自己100颗,4号5号0颗,同意的请举手!这时候,4号为了不死,只好举手,而5号暴跳如雷地反对,但是没有用。因为3个人里面有2个人同意啊,通过率66.7%,大于50%!
由此可见,当轮到3号分配的时候,他自己100颗,4和5都是0。因此,4和5不会允许轮到3来分。如果2号能够给4和5一些利益,他们是会同意的。
比如2的分配方案是:98,0,1,1,那么,3的反对无效。4和5都能得到1,比3号来分配的时候只能得到0要好得多,所以他们不得不同意。
由此看来,2号的最大利益是98。1号要收买2号,是不可能的。在这种情况下,1号可以给4号和5号每人2颗,自己收买他们。这样,2号和3号反对是无效的。因此,1号的一种分配方案是:96,0,0,2,2。
这是不是最佳方案呢?再想一想,1号也可以不给4号和5号各2个,而只需要1个就搞定了3号,因为如果轮到2号来分配,2号是可以不给3号的,3号的得益只有0。所以,能得到1个,3号也该很满意了。所以,最后的解应该是:97,0,1,2,0。
好,再倒推。假设1号提出了97,0,1,0,2的方案,1号自己赞成。2和4反对。3∶2,关键就在于3号和5号会不会反对。假设3号反对,杀掉1号,2号来分配,3自己只能得到0。显然,3号不划算,他不会反对。如果5号反对,轮到2号、3号、4号来分配,5号自己最多只能得到1。
所以,3号和5号与其各得到0和1,还不如现在的1和2。
正确的答案应该是:1号分配,依次是:97,0,1,0,2; 或者是:97,0,1,2,0。
0 0
- 五个海盗抢到了100颗宝石,每一颗都一样大小和价值连城。他们决定这么分: 抽签决定自己的号码(1、2、3、4、5)
- 6个海盗抢到了100颗宝石,每一颗都一样的大小和价值连城。他们决定这么分:
- 5个海盗分100颗宝石
- 100颗宝石5个海盗怎么分
- 海盗分宝石的求解和扩展
- 微软面试题--五个海盗分100个宝石(博弈)
- 微软面试题:五个海盗分宝石
- 5个海盗分100颗宝石/金币的2个版本-Google, 谷歌,百度,baidu,阿里巴巴,alibaba,微软,华为,huawei面试题
- 他们做了个艰难的决定
- 关于分钻石的数学题有五个海盗得到了一百颗的钻石
- 关于分钻石的数学题有五个海盗得到了一百颗的钻石
- 五个海盗分宝石的问题,我的解答是这样的
- 小米的五个决定
- 海盗分宝石
- 海盗分宝石
- 海盗分宝石问题
- 海盗分宝石
- 海盗分宝石
- RatingBar setProgressDrawableTiled 动态修改的兼容性问题
- 关于FMDB的一些用法
- 创建弹出式菜单
- 调用系统相机/相册获取图片的完美解决方案
- VC++60 第十六章 VC++开发工具和MFC基础类库(四)
- 五个海盗抢到了100颗宝石,每一颗都一样大小和价值连城。他们决定这么分: 抽签决定自己的号码(1、2、3、4、5)
- VC8常用代码对应汇编 成员变量赋值
- 系统菜单项的处理
- MFC菜单动态操作
- Java调用jama实现矩阵运算
- OSI七层模型理解
- 关于面向对象的三个基本特征 封装、继承、多态 ’
- JAVA之网络编程基础
- 客户坐标转屏幕坐标