强盗分宝石

雪山上的蒲公英 雪山上的蒲公英     2022-08-13     273

关键词:

题目描述:五个海盗抢到了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。
 

sql队列强盗(代码片段)

查看详情

多臂强盗:当随机概率低于分配给强盗的成功概率时,为什么我们将奖励增加1(代码片段)

我试图了解使用python的多臂强盗问题。当随机概率小于分配的强盗的成功概率时,我不断遇到返回值1(即奖励)的代码片段。请看下面的代码defreward(prob):reward=0;foriinrange(10):ifrandom.random()<prob:reward+=1returnreward我从以下链接获得... 查看详情

使用 Vowpal wabbit 的上下文强盗

】使用Vowpalwabbit的上下文强盗【英文标题】:ContextualBanditusingVowpalwabbit【发布时间】:2015-08-0620:42:25【问题描述】:在这种情况下,输入之一是选择手臂/动作的概率,但我们如何找到该概率?找到这个概率本身不是一项艰巨的... 查看详情

强盗战争游戏,正确的命令但权限被拒绝?

】强盗战争游戏,正确的命令但权限被拒绝?【英文标题】:BanditWarGame,correctcommandbutpermissiondenied?【发布时间】:2021-12-0317:36:27【问题描述】:我记得我在大学里玩过BanditWargame,所以我想在这个周末再试一次以更新一些知识。... 查看详情

codevs2597团伙

题目描述 Description1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是:我朋友的朋友是我的朋友;我敌人的敌人也是我的朋友。 两个强盗是同一团伙... 查看详情

codevs2597团伙

题目描述 Description1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是:我朋友的朋友是我的朋友;我敌人的敌人也是我的朋友。 两个强盗是同一团伙... 查看详情

codevs2597团伙

...597团伙 题目描述Description1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是:我朋友的朋友是我的朋友;我敌人的敌人也是我的朋友。 两个强盗是同... 查看详情

codeforcesround#635(div.2)dxeniaandcolorfulgems(代码片段)

题目链接点我呀翻译给你3种颜色的宝石,每种宝石数量为nr,ng,nb。然后依次给出这3中宝石的各个重量。让你选出来3个宝石,每种类型的宝石各一个。假设选出来的A,B,C宝石的重量分别为X,Y,Z。则要求((X-Y)^2+(X-Z)^2+(Y-Z)^2)的值最小。让... 查看详情

独角兽挂着说刷新宝石

】独角兽挂着说刷新宝石【英文标题】:unicornhangssayingRefreshingGems【发布时间】:2011-11-0412:38:00【问题描述】:从乘客迁移到独角兽后,我在分期时遇到了一个奇怪的问题。我为开发和登台环境配置了独角兽。它在开发中工作,... 查看详情

强盗抢房子(ii)

题目:和之前一道抢房子一样,区别是增加了一个条件,房子是环形分布的,就是说不能同时偷第一个和最后一个,因为他们也是挨着的。。思路:最优解很巧妙的想法,我们已经算过直线分布的了,那么环形分布和直线分布是... 查看详情

p1892[boi2003]团伙并查集(代码片段)

题目描述1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是:我朋友的朋友是我的朋友;我敌人的敌人也是我的朋友。两个强盗是同一团伙的条件是当且仅... 查看详情

从小故事带你理解零知识证明|区块链一千零一问

开胃小故事阿里巴巴证明阿里巴巴被强盗抓住,为了保命,他需要向强盗证明自己拥有打开石门的密码,同时又不能把密码告诉强盗。他想出一个解决办法,先让强盗离开自己一箭之地,距离足够远让强盗无... 查看详情

洛谷p1892团伙(代码片段)

...   洛谷P1892团伙题目描述1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是:我朋友的朋友是我的朋友;我敌人的敌人也是我的朋友。两个强盗是同一团... 查看详情

并查集的一般操作③

RT 题目描述 1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是: 我朋友的朋友是我的朋友; 我敌人的敌人也是我的朋友。 两个强盗是同... 查看详情

背包问题

...要从一则故事说起。话说有一哥们去森林里玩发现了一堆宝石,他数了数,一共有n个。但他身上能装宝石的就只有一个背包,背包的容量为C。这哥们把n个宝石排成一排并编上号:0,1,2,…,n-1。第i个宝石对应的体积和价值分别为V... 查看详情

codevs2597团伙

...sp;  题目描述Description1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是:我朋友的朋友是我的朋友;我敌人的敌人也是我的朋友。 两个强盗是同... 查看详情

buaa111圆有点挤

...两个精美的小礼品:两个底面半径分别为R1和R2的圆柱形宝石,并想装在一个盒子里送给女友。 好不容易找到了一个长方体的盒子,其底面为A*B的矩形,他感觉好像宝石装不进去,但又不敢轻易塞进去试试。 现请你帮他... 查看详情

keras的多臂强盗特工(代码片段)

...rning_rate=0.001)update=optimizer.minimize(loss)这是一个简单的多臂强盗。到目前为止,我尝试将代理转换为Keras的工作是;size=4weights=K.variable(K.ones(shape=(size),dtype='float32'))best_action=L 查看详情