论坛首页 入门技术论坛

村里有50个人,每个人有一条狗,即有50只狗……标准答案

浏览 72036 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (2)
作者 正文
   发表时间:2012-01-10  
lonelybug 写道
seedjyh 写道
lonelybug 写道
按照这个题目给出,我立刻就告诉你无解,并且,也没有办法用合理逻辑推论。

假设,我是50人中的一个人,我就算看到其他49条狗都病了,但是,主人之间不能交流,我一样推断不出来,或者说,我可以一样相信我的那条狗是最幸运的那个。


如果你看到其他49条狗都病了,又知道“病狗至少有50条”,你就能推断出来。
建议多研究一下楼主的“标准答案”。


请问你如何判断出来不是50条狗都病了?你从问题的那个逻辑推断出来的?



if 之后还会走else吗?
0 请登录后投票
   发表时间:2012-01-10  
leavesforeye 写道
lonelybug 写道
seedjyh 写道
lonelybug 写道
按照这个题目给出,我立刻就告诉你无解,并且,也没有办法用合理逻辑推论。

假设,我是50人中的一个人,我就算看到其他49条狗都病了,但是,主人之间不能交流,我一样推断不出来,或者说,我可以一样相信我的那条狗是最幸运的那个。


如果你看到其他49条狗都病了,又知道“病狗至少有50条”,你就能推断出来。
建议多研究一下楼主的“标准答案”。


请问你如何判断出来不是50条狗都病了?你从问题的那个逻辑推断出来的?



if 之后还会走else吗?


LZ两件事你需要加强,第一件事情,先学会如何能正常地用中文清楚简洁的描述一件事情或者一道题。第二,再多增强一些基本的逻辑思维能力。

如果你有任何不服气的话,你先把你说的if......这句话用中文解释一下。



0 请登录后投票
   发表时间:2012-01-10  
leavesforeye 写道

每人看后不准相互交流,表示比如A看到了2条病狗,C看到了四条病狗,A不知道C看到了4条病狗。

 

 

 

没看懂楼主给出“无解“的理由。至今仍然认为答案的理由是充分的,正确的。

 

另外对楼主的第3条表示疑问。

 

如果A看到2条病狗:

C可以看到2条(病狗可以是D和E家的,也可以是ACD三家的)

C也可以看到1条(病狗是C和D家的)

C也可以看到3条(病狗是A,D,E家的)。

 

但楼主说,A看到2,C看到4,请问这4条是哪家的4条?

0 请登录后投票
   发表时间:2012-01-10  
SocalQuest 写道
leavesforeye 写道

每人看后不准相互交流,表示比如A看到了2条病狗,C看到了四条病狗,A不知道C看到了4条病狗。

 

 

 

没看懂楼主给出“无解“的理由。至今仍然认为答案的理由是充分的,正确的。

 

另外对楼主的第3条表示疑问。

 

如果A看到2条病狗:

C可以看到2条(病狗可以是D和E家的,也可以是ACD三家的)

C也可以看到1条(病狗是C和D家的)

C也可以看到3条(病狗是A,D,E家的)。

 

但楼主说,A看到2,C看到4,请问这4条是哪家的4条?

其实那是打个比方说这样的情况,实际上说成5条六条,1条都是可以的,这句话是一个假设

0 请登录后投票
   发表时间:2012-01-10   最后修改:2012-01-10
我看这个问题好像三个人去一个特别爱干净的人家里去一样,到底谁会去澡一样,套一句英文,everyting is possible!
根本没有一个固定的答案。
这就看你自己的项目一样,如果在某个地方对安全其实要求不高,反而对效率要求更高那么这里就应该以效率为导向,如果这里对安全要求更高,那么对效率就可以适当的调整。
以安全为导向。
最后的答案,我想应该不是无解,应该是根据情形来选择不同的结果。如果是答题,只需列举可能的答案,然后阐述各种答案的理由。
0 请登录后投票
   发表时间:2012-01-13  
1 。有几声枪响就有几声病狗。
2 。如何判断是否病狗呢?
    答:看了别人的所有狗,做出的判断自己的狗是不是病狗,当然也可能误判,把自己正常的狗杀了。
3. 再把问题简化,把那些干扰人的因素去掉,比如说天数。

现在问题就很明白了,
  病狗数量=(50-枪响数)/枪响数
0 请登录后投票
   发表时间:2012-01-13  
更正: 病狗数=(50-枪响数)|| 枪响数
0 请登录后投票
   发表时间:2012-01-17  
这种题目的前提就是每个村民都是很有逻辑的,那答案就是3条。不明白LZ“但是没人知道是不是所有的病狗都死了,好狗都活着。”这句话意义何在
0 请登录后投票
   发表时间:2012-01-17  
lonelybug 写道
seedjyh 写道
lonelybug 写道
按照这个题目给出,我立刻就告诉你无解,并且,也没有办法用合理逻辑推论。

假设,我是50人中的一个人,我就算看到其他49条狗都病了,但是,主人之间不能交流,我一样推断不出来,或者说,我可以一样相信我的那条狗是最幸运的那个。


如果你看到其他49条狗都病了,又知道“病狗至少有50条”,你就能推断出来。
建议多研究一下楼主的“标准答案”。


请问你如何判断出来不是50条狗都病了?你从问题的那个逻辑推断出来的?


第三天枪响就可以判断出不是50条狗都病了,如果50条狗都病了你怎么确定自己的狗也是病的?你不能确定自己的狗是病的就不能开枪,跟题目冲突了,所以就可以推断出不是50条狗都病了
0 请登录后投票
   发表时间:2012-01-30  
leavesforeye 写道

最重点问题在于:

4和5,表示第一天都看到村子还有病狗,但是不确定自己的是不是病狗,于是都回家等着没有看到病狗的人杀死自己的狗。

第一天没有枪声,这样存如下结果:

 

  • 如果所有人看到=1条病狗,那个养着病狗的人直接杀死自己的狗,毫无疑问问题解决;(否决,不符合题意)
  • 如果所有人看到>1&&<49条病狗,第一天不能判断自己的狗有没有病,都不能确定自己的狗是否有病,于是第一天不杀自己的狗;(第一天没有枪声正常)
  • 如果所有人看到=49条病狗,都不能确定自己的狗是否有病,于是第一天不杀自己的狗。(第一天没有枪声正常)
当第二天过后,依然没有枪声,这样存如下结果:
不管看到多少病狗,他们都能知道第一天没有任何人判断出那条狗是病狗,所以所有人都看到了病狗,就是在两只以上,

 

其实很简单的,首先,假设病狗是X条。那么有X个人看到的是X-1条病狗,剩下的50-x人看到的是X条病狗。。。。
所以LZ的无解理由是很荒诞的。。。。因为根本没解释为什么第三天枪响。。

第一天没响,能说明的是病狗在一只以上,即X>1。如果x=1,则会有1个人看到0只,就会开枪打死自己的狗。

第二天没响,说明两只以上。因为如果x=2,会有人看到只有1条病狗,而第一天没响又排除了x=1的可能性,他自己的狗就是病狗,会开枪。而没开枪说明是x>2

第三天响了,是因为x=3。因为有3人只看到了两只病狗,其他47个人看到3条病狗,而根据前两天的情况,完全排除只有2只病狗的可能性。所以会有三个人开枪。。LZ为什么明明写了解释还要说是无解呢。。。奇怪中。

0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics