需要真正的高手来指点这道较老的推理题

来源:百度知道 编辑:UC知道 时间:2024/05/25 07:18:52
需要真正的高手来指点这道较老的推理题(只会抄袭网络答案的就不要多此一举了)

村子中有50个人,每人有一条狗。在这50条狗中有病狗(这种病不会传染)。于是人们就要找出病狗。每个人可以观察其他的49条狗,以判断它们是否生病,只有自己的狗不能看。观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的是病狗就要枪毙自己的狗,而且每个人只有权利枪毙自己的狗,没有权利打死其他人的狗。第一天,第二天都没有枪响。到了第三天传来一阵枪声,问有几条病狗,如何推算得出?

我想很多人都见过这道题,可是思考这道推理题的时候,我发现一个问题,怎么才算1天?
假设答案真像很多人所说的有3条病狗,那么作为有病狗的一个主人甲,他并不知道自己的够是有病的,但是看到另外两家主人乙和丙家里有病狗却没有杀,说明甲能推断出自己的狗有病.乙和丙也站在甲的立场去想,然后知道自己家的狗有病.知道自己的狗有病就枪毙,这样需要3天吗,不是1天就能完成吗?

当然需要三天啊.
先把这个问题简化一下.如果有5只狗,在这五只狗中有病狗,于是找按规则找出病狗.假设其中有两只病狗,那么其中就有两个病狗主人只看到一只病狗,而其他三只狗健康,自己的狗未知,所以想知道自己的狗是否有病,必须靠别人眼睛和别人的行动(也就是如果自己的狗有病,另外的那只病狗主人就会同样看到3只健康的和一只不健康的,所以另外的病狗主人也不知道自己的狗是否健康,就不会开枪)当第一天另外的病狗主人没开枪,那么就知道自己的狗有病了.同理,第二天还没有开枪的,就是三只病狗.......
所以就算是50只狗,判断方法也一样,所以第三天枪响有三只病狗,时间是推算病狗数量的决定性条件,用一天是推算不出的.
如果我解释的你不明白,发消息给我.