面试题2:5个强盗分100颗宝石
5个海盗抢到了100颗宝石,每100颗宝石大小相同且价值连城,他们决定这么分:
(1)抽签决定自己的号码(1、2、3、4、5)。
(2)首先,由1号提出分配方案,然后大家5人进行表决,当超过半数的人同意时,按照他的方案进行分配,否则将被扔入大海喂鲨鱼。
(3)1号死后,再由2号提出分配方案,然后大家4人进行表决,当超过半数的人同意时,按照他的提案进行分配,否则将被扔入大海喂鲨鱼。
(4)依此类推。
条件:每个海盗都是很聪明的人,都能够非常理智地判断得失,从而做出选择。并有以下的判断原则:
A:尽量保命。
B:尽量多得宝石。
C:尽量多杀人。
问题:最后的分配结果如何?
1.所涉及的知识点
递推法
分析法
2.分析问题
可用递推法来解决本题,由已知条件层层向下分析,要确保每一步都能准确无误。可能会有几个分支,应本着先易后难的原则,先从简单的分支入手。
如果从五个强盗开始考虑,非常不好入手,可以先考虑简单的情况,即海盗人数较少的情况,然后逐步复杂化,但是原理和简单情况还是相同的。
(1)当仅有二个海盗时,那么无论一号提出什么方案,二号都反对,那么一号肯定喂鱼,二号拿到所有的珠宝。
(2)当有三个海盗时,二号海盗肯定不希望一号海盗死,否则他就成了(1)中的一号。那么这里的一号就会想拿走所有的珠宝,因为他知道二号肯定支持他,因为如果二号反对,那么三号肯定也反对,一号喂鱼的话,那么二号也肯定喂鱼。所以一号拿走所有的珠宝。
(3)当有四个海盗时,一号必须要有三票赞成,而二号海盗肯定是反对的,因为当前的一号死后,他就成了(2)中的一号,所以当前的一号必须给三号海盗和四号海盗一个宝石,所以分配方案为一号98个,二号没有,三号四号各一个。在此不要忘记海盗判断原则C。
(4)当有五个海盗时,那么一号必须要有三票赞成,而根据(3)可知二号肯定反对他,因为他死了二号便成了(3)中的一号,可以拿98个宝石,所以不给二号。可以给三号1个宝石,三号便会支持他,否则三号将成为(3)中的二号,得不到宝石。给四号或五号中的一个两颗宝石,让他多于(3)中所得到的宝石数,另外一个不给,即可获得一个支持者。
3.答案
所以最后的方案为:
1号:97
2号:0
3号:1
4号:0
5号:2
或者:四号:2,五号:0
实现递推的方法的原则,就是由简单到复杂,逐步地深入分析,但是基本的原理却和简单情况非常相似。
分享到:
相关推荐
海盗分金的故事 5个海盗抢到了100个金币,每一颗都一样的大小和价值连城。 他们决定这么分: 1。抽签决定自己的号码(1,2,3,4,5) 2。首先,由1号提出分配方案,然后大家5人进行表决,当且仅当半数和超过半数的...
在这个问题中,五个强盗抢到100枚金币,按照特定的规则进行分配。规则是:由编号最小的强盗提出分配方案,如果超过半数同意,方案通过;否则提出方案的强盗将被丢入海中。这一过程按顺序继续,直到有一个方案被接受...
有天夜里5个强盗A、B、C、D、E抢到一大堆金币(金币个数不超过n个,n),可是怎么也无法平均分成5份,吵吵嚷嚷…… 吵累了,只好先睡觉,准备第二天再分。 夜深了,一个强盗A偷偷爬起来,先拿了一个金币私下放自己...
#### 面试题2:5个强盗分100颗宝石 **题目背景**: 五个海盗获得100颗宝石,需要通过投票的方式决定如何分配这些宝石。如果投票未过半,则提议者将被丢入海中喂鲨鱼。 **问题**: 最终的分配方案会是什么样子? *...
- 设最后一个强盗E分完金币后每个强盗应该得到的金币数量为x,则此时剩下的金币数量应该是`5x + 1`。 - 倒数第二个强盗D在拿走一个金币后,剩下的金币数量为`(5x + 1 + 1) / 4 * 5`,即`25x / 4 + 5 / 4`。 - 类似地...
5. 强盗分金模型:强盗分金模型是一个经典的游戏理论模型,旨在研究五个强盗如何分配100枚金币,以便使每个人都能获得最大收益的方案。 总结来说,蜈蚣博弈:强盗分金模型展示了游戏理论中策略选择的重要性,每个...
3个商人和3个强盗来到河边要过河,现在只有一条船,而且船上最多只能坐两个人。在河的任何一岸,只要强盗的数量多于商人,强盗就要抢劫商人,要求设计一种过河的方法,使得商人和强盗全部过河。 这是我编写的过河...
三个强盗.ppt
【标题】"用C语言写的强盗小程序"是关于程序设计的一个项目,它涉及的是数据结构与算法的应用。在这个小程序中,我们很可能看到如何利用C语言来解决一个可能的“强盗问题”,这类问题通常与优化策略或者动态规划有关...
标题和描述都指向一个PDF文档,"三个强盗读后感共3页.pdf.zip",这表明它是一个压缩文件,里面包含了一个关于"三个强盗"读后感的三页PDF文档。然而,标签部分只显示了文件名的一部分,可能是由于复制粘贴时的错误。...
这个Python包包含来自不同论文的方法的实现,这些方法处理语境强盗问题,以及来自典型的多臂强盗策略的改编。
“布林强盗系统”是一种基于文华财经软件的麦语言编程实现的交易策略系统。该系统主要利用布林带指标(Bollinger Bands)来判断买卖信号,通过一系列复杂的计算与逻辑判断为用户提供交易建议。 #### 二、核心参数...
《豆蔻镇的居民和强盗》阅读练习题.pdf
布林强盗系统是一个中长线策略,将采用后者的规则,价格超过 50 日移动平均线上方 1 个标准差作为买进信号的标准,跌破 50 日移动平均线下方 1 个标准差作为卖出信号的标准。该系统还增加了确认模块,要求日收盘价...
首先,四个强盗通过抽签决定顺序,每个人都有可能成为第一个提出分配方案的人。如果1号强盗提出的方案是公平的,例如平均分配,那么每个强盗将得到20根金条。然而,1号意识到2号、3号和4号可能会因为贪欲而否决他的...
【H5小游戏源码 射击强盗.zip】是一个包含H5游戏开发源代码的压缩文件,主要用于学习和参考。H5游戏,全称为HTML5游戏,是利用HTML5、CSS3、JavaScript等Web技术开发的可以在网页上直接运行的游戏。这种类型的游戏...
混合线性 Upper Confidence Bound (UCB) 算法,简称为混合线性 UCB 或 LinUCB,是在线学习领域中的一个关键算法,尤其在多臂强盗问题(Bandit Problem)中广泛应用。该算法结合了线性回归模型与上界信心策略,旨在...
儿童绘本故事PPT下载:《三个强盗》PPT; 从前从前有三个很凶的强盗。他们穿着宽宽的黑斗篷... 第一个强盗有一支喇叭枪。第二个强盗有一个撒胡椒粉的喷壶。第三个强盗有一把巨大的红斧头。 晚上天黑了,他们就到路上去
面试题2:5个强盗分100颗宝石 面试题3:分牛 面试题4:谁在说谎 面试题5:是亏了还是赚了 面试题6:小虫分裂问题 面试题7:飞机绕地球环行问题 第13章 数学能力 面试题1:用一笔画出经过9个点的4条直线 面试题2:在9...