有多少只病狗 - 健康之初


有多少只病狗

  一个村庄有64户人家,每户人家养了一只狗,共64只狗。忽然有一天狗瘟出现了,并且已经断定村子里一定有病狗,但不知道谁家的狗生病了,病狗是能够被看出来的,而且病狗必须要被杀掉。

  要求是:每户人家只能看别人家的狗,但只能有权杀自己的狗;而且人与人之间必须不能交流。

  第一天过去了,村子里没有听到枪声;第二天过去了,村子里依然没有听到枪声;第三天,村子里听到了一阵枪声。

  现在请问:村子里到底有多少只病狗?

  答案:第几天枪响就有几只。  

  分析如下:
  狗主人观察外面时有两种情况,1、其他狗有生病的  2、其他狗全为正常狗。前者并不能立刻肯定自己的狗有没有生病,后者则可以立刻肯定自己的狗生病了。

  一、如果只有一只病狗,则只有这只狗主人看见别人的狗全部是正常的,其他人则看到外面有一只病狗。
其他人看到外面有一只病狗,并不能确定自己的狗没有生病,所以他不会开枪,而病狗主人看到外面所有狗都正常,因而可以肯定自己的狗生病,所以第一天就干掉它了。其他人这时就能知道,自己的肯定正常。

  二、两只病狗的情况
  病狗主人发现,外面有一只病狗,而那只病狗第一天并没有被干掉,所以可以肯定,还有其他病狗。自己看到的其他的狗都是正常的,那么肯定,自己的狗也生病了,于是,第二天,举枪
正常狗的主人看见外面有两只病狗,他不确定自己的狗是否生病,所以会一直等到第三天,而这之前结果已经出来了。

  三、跟上面相同,推到N条病狗的情况也成立。

健康之初
反馈
顶部