揭晓一下IBM那道题的答案,顺便再出一道,^_^ >>Debian(乌鱼子) (为什么不是47条病狗你好象没有回答我阿? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 上面的答案都不对,再慢慢想,其实很简单,思路和病狗的差不多,倒推。to blackhost(剑心) :因为题目说的很清楚是第3天响的枪声。 哈哈,eci0的答案也不对,但是很接近了。 才看见 和 farawayMemory(看树撞见她) 的差不多不好意思 NewBeeJ(骡那耳朵)努力一下就对了,:) 当且仅当半数和超过半数的人同意时,按照他的提案进行分配,否则将被扔入大海喂鲨鱼而且每个海盗都非常的SMART:假如只剩下4,5号,(前面的人全部扔进大海了)那么4号肯定会分给自己100颗,5号反对也没用;假如只剩下3,4,5号,(前面的人全部扔进大海了)那么3号分给自己99颗,5号1颗(5号会同意,否则一颗都拿不到)4号反对也没用。假如只剩下2,3,4,5号,(前面的人全部扔进大海了)那么2号分给自己99颗,4号1颗(4号会同意,否则一颗都拿不到)3,5号反对也没用。假如是一号分,那么他将分给自己98颗,3号5号各一颗(他们会同意,理由同上),2号4号反对也无用。我的分析难道错了,我不相信! to:followme2003(followme2003) 一半以上当然包括自己。to:eci0(eci0)你的答案和正确答案很接近,但不对,呵呵。如果剩2个人,如果5好不同意4号的分配,那么4号回被杀死,因为没有超过一半人同意。 我在你的那个帖子里已经推理了!在靠下面的帖子里!大概是第61条回复!比帖主解释得详细!http://expert.csdn.net/Expert/topic/1897/1897588.xml?temp=.487713 答案是共有三条病狗!那些人只需看一次狗就行了!因为题目说有病狗!那么至少有1条!就推测呗!(题目暗含了每个人都能看出有病的狗)1、假设有1条!(假设狗主人是A)那么A第一天一看,别的狗都是好的,那么他应该回家就干掉那条狗。(那应该第一天听见枪声)现在没有,所以答案不是1条病狗!2、假设有2条!(假设病狗主人是A、B)那么A、B第一天一看,别的狗中有1条病狗(除此以外的48个人都看出有2条),记住A、B自己是假设有1条狗(因为他们看不到自己的狗,只看见别人的狗中有1个病的),如果他们假设成立的话,那么在第一天就该听到枪声,可是没有,他(A和B分别明白共了有两条病狗(别人的一个+自己的狗),等到第二天他们就应该分别干掉自己那条狗。(那应该第二天听见枪声)现在没有,所以答案不是2条病狗!3、假设有3条!(假设病狗主人是A、B、C)那么A、B、C第一天一看,别的狗中有2条病狗(除此以外的48个人都看出有3条),记住A、B、C自己是假设有2条狗(因为他们看不到自己的狗,只看见别人的狗中有2个病的),如果他们假设成立的话,根据我们上面的推理,那么在第二天就该听到枪声,可是没有,他们(A和B、C分别明白共了有3条病狗(别人的2个+自己的狗),等到第三天他们就应该分别干掉自己那条狗。(那应该第三天听见一阵枪声)所以第三天听到枪声就对了!答案是共有三条病狗! 97,0,1,2,0或者97,0,1,0,2;三个人的时候,分配方案是100,0,0,因为2号不敢反对,如果反对的话,只剩下2个人,2号必死,4个人的时候,分配方案是98,0,1,1,如果用99,0.10.或者99,0,0,1,的话,违反保命原则,因为总有一个人不管反对还是赞成都会得到相同的财宝,所以有可能反对,5个人的话,分配方案是97,0,1,2,0或者97,0,1,0,2,如果向楼上的分配方案的话,98,0,0,1,1,4号和5好无论反对还是赞成都会得到相同的宝石,因此可能会全部反对,违反保命原则.如果是6个人的话,最佳分配方案是,95,0,1,2,2,0,或者95,0,1,2,0,2,我们仅分析前一种情况,3号和4号绝对不会反对,5号如果反对,可能会得到更少(0个)的财宝,也不会反对.一般的,对于k个强盗,肯定存在几个最佳方案,对于k+1的情形,我们考虑k的情形,由于可能有几个分配方案,我们用一个数组f[k],其中f[m]记为第m个强盗在多个分配方案中得到最多的数目,我们将这个数组从小到达排队,取前[m/2]个,对这几个强盗,对于在几个方案中得到的宝石数目相同的强盗,我们在k+1的情形中,将这个数目+1,否则,这个数目不变,这样应该就得到最佳的分配方案,显然这个方案肯定可以通过,是不是最佳的还没有严格的证明.这也说明一个问题,如果强盗数目过多,可能就没有符合保命法则的最佳分配方式了,一个问题是,k等于多少的时候才会出现这种情况呢?这需要大家进一步的考虑.大家看一下有没有漏洞?? 对于疯狗的问题,如下命题肯定是正确的,第n天枪响就有n条疯狗,并且当天所有的疯狗均毕命,即有n枪响; 本命题可以如下简单的证明:我们先证明如果第n天枪没有响,则至少有n+1条疯狗;k=2,3的时候显然成立,设k=n的时候成立,那么k=n+1的时候,大家都知道至少有n条狗了,因为没有人开枪,说明每个人都至少发现了n条疯狗,否则肯定有人开枪,由于疯狗主人也至少发现了n条疯狗,则至少存在n+1条疯狗,得证.如果第n天枪响的话,由于第n-1条枪没有响,则至少哟n条疯狗,如果疯狗个数多于n,则每个人都至少发现n条疯狗,无法判断出自己的狗是不是疯狗,因此,第n天强响就有n条疯狗,并且每个疯狗的主人都能判断出自己的狗是疯狗. toDebian(乌鱼子) 操!又没有说明1号是否是最强的,如果我是3或5号的话,他要是得97,我非联合2、4号整死他。要是我是1号,就提30、30、30、10、0 正在使用TWAVER,问一下TWAVER怎么连接数据源,JDBC或者JNDI? 用JAVA画scatter图的问题 使用INETADRESS扫描局域网IP和SOCKET扫描端口的问题 线程问题 实现一个整型数组类似java.lang.String的charAt方法 请教用netbeans的高手 语法出错!!!!在线ing...... 一个多线程的问题 怎么把文件中的中文字符和英文区分开来? java RTTI 问题 怎样实现监控各服务器 如何截取byte数组的一部分,复制到另一个同类型的数组中
to blackhost(剑心) :因为题目说的很清楚是第3天响的枪声。
和 farawayMemory(看树撞见她) 的差不多不好意思
:)
假如只剩下4,5号,(前面的人全部扔进大海了)那么4号肯定会分给自己100颗,5号反
对也没用;
假如只剩下3,4,5号,(前面的人全部扔进大海了)那么3号分给自己99颗,5号1颗(5
号会同意,否则一颗都拿不到)4号反对也没用。
假如只剩下2,3,4,5号,(前面的人全部扔进大海了)那么2号分给自己99颗,4号1颗
(4号会同意,否则一颗都拿不到)3,5号反对也没用。
假如是一号分,那么他将分给自己98颗,3号5号各一颗(他们会同意,理由同上),2号4
号反对也无用。我的分析难道错了,我不相信!
一半以上当然包括自己。
to:eci0(eci0)
你的答案和正确答案很接近,但不对,呵呵。
如果剩2个人,如果5好不同意4号的分配,那么4号回被杀死,因为没有超过一半人同意。
比帖主解释得详细!
http://expert.csdn.net/Expert/topic/1897/1897588.xml?temp=.487713
因为题目说有病狗!那么至少有1条!就推测呗!(题目暗含了每个人都能看出有病的狗)
1、假设有1条!(假设狗主人是A)
那么A第一天一看,别的狗都是好的,那么他应该回家就干掉那条狗。(那应该第一天听见枪声)
现在没有,所以答案不是1条病狗!
2、假设有2条!(假设病狗主人是A、B)
那么A、B第一天一看,别的狗中有1条病狗(除此以外的48个人都看出有2条),记住A、B自己是假设有1条狗(因为他们看不到自己的狗,只看见别人的狗中有1个病的),如果他们假设成立的话,那么在第一天就该听到枪声,可是没有,他(A和B分别明白共了有两条病狗(别人的一个+自己的狗),等到第二天他们就应该分别干掉自己那条狗。(那应该第二天听见枪声)
现在没有,所以答案不是2条病狗!3、假设有3条!(假设病狗主人是A、B、C)
那么A、B、C第一天一看,别的狗中有2条病狗(除此以外的48个人都看出有3条),记住A、B、C自己是假设有2条狗(因为他们看不到自己的狗,只看见别人的狗中有2个病的),如果他们假设成立的话,根据我们上面的推理,那么在第二天就该听到枪声,可是没有,他们(A和B、C分别明白共了有3条病狗(别人的2个+自己的狗),等到第三天他们就应该分别干掉自己那条狗。(那应该第三天听见一阵枪声)所以第三天听到枪声就对了!答案是共有三条病狗!
只剩下2个人,2号必死,4个人的时候,分配方案是98,0,1,1,如果用99,0.10.或者99,0,0,1,的话,
违反保命原则,因为总有一个人不管反对还是赞成都会得到相同的财宝,所以有可能反对,
5个人的话,分配方案是97,0,1,2,0或者97,0,1,0,2,如果向楼上的分配方案的话,98,0,0,1,1,4号和5好无论反对还是赞成都会得到相同的宝石,因此可能会全部反对,违反保命原则.如果是6个人的话,
最佳分配方案是,95,0,1,2,2,0,或者95,0,1,2,0,2,我们仅分析前一种情况,3号和4号绝对不会反对,5号如果反对,可能会得到更少(0个)的财宝,也不会反对.一般的,对于k个强盗,肯定存在几个最佳方案,对于k+1的情形,我们考虑k的情形,由于可能有几个分配方案,我们用一个数组f[k],其中
f[m]记为第m个强盗在多个分配方案中得到最多的数目,我们将这个数组从小到达排队,取前[m/2]个,对这几个强盗,对于在几个方案中得到的宝石数目相同的强盗,我们在k+1的情形中,将这个数目+1,
否则,这个数目不变,这样应该就得到最佳的分配方案,显然这个方案肯定可以通过,是不是最佳的还没有严格的证明.这也说明一个问题,如果强盗数目过多,可能就没有符合保命法则的最佳分配方式了,
一个问题是,k等于多少的时候才会出现这种情况呢?这需要大家进一步的考虑.
大家看一下有没有漏洞??
n枪响;
本命题可以如下简单的证明:
我们先证明如果第n天枪没有响,则至少有n+1条疯狗;
k=2,3的时候显然成立,设k=n的时候成立,那么k=n+1的时候,大家都知道至少有n条狗了,因为没有人开枪,说明每个人都至少发现了n条疯狗,否则肯定有人开枪,由于疯狗主人也至少发现了n条疯狗,则至少存在n+1条疯狗,得证.
如果第n天枪响的话,由于第n-1条枪没有响,则至少哟n条疯狗,如果疯狗个数多于n,则每个人都至少发现n条疯狗,无法判断出自己的狗是不是疯狗,因此,第n天强响就有n条疯狗,并且每个疯狗的主人都能判断出自己的狗是疯狗.
要是我是1号,就提30、30、30、10、0