这一类的题目其实是一种很有意思的智力题.
题目描述
有50户人家,每家一条狗.有一天警察同志通知,在这50条狗中有病狗,它的行为和其它狗不一样,现在每个人只能通过观察其它人家的狗来判断自己家的狗是否生病,但是不能看自己家的狗,如果判断出自己家的狗为病狗,就要开枪示意,然后将狗狗送往医院.结果第一天并没有枪声,第二天也没有,第三天一阵枪响.那么最后有几只狗狗被送往医院了呢?
刚上手这道题,感觉一头雾水,总感觉莫名其妙,直接放在一起看看就知道了嘛!搞得这么复杂,忘了是在开发思维,做智力题了.
冷静一下,把思路理清,这道题还是很有意思的.
首先我们不去想第三天到底有几只狗狗被送往医院(或者说第三天有几声枪响),我们先将问题简化,然后进入到问题当中的角色.
我们假设只有一只生病的狗狗.
然后我们演正常狗狗的人家吧,现在警察让我们去观察,我们就会发现,我们看到的49只狗狗,有一只和其它狗狗不一样,那我们就要思考了哇!如果只有这一只狗狗生病了,那么你想想病狗的主人他看到是什么,他一定就会看到49只狗狗全是行为一样的!
现在我们再变成生病狗狗的主人,现在警察说你们这50户人家里面有病狗,现在你们去观察其他人家的狗狗,做出判断.然后我们去观察,一看,嗯,这49只狗狗全是一样的行为!完蛋!那警察都说都病狗了,现在别人家都是正常的,那自家狗狗肯定是生病了哇,还想什么,直接开枪呗!给狗狗治病最重要!
这就是只有一只生病的狗狗的情况,如果只有一只,那第一天定然会有枪声.现在第一天安静的过去了,说明生病狗狗的数量是大于1的.
那假设有两只生病的狗狗,第一天安静度过之后,大家都会意识到,生病的狗狗数量大于1.我们再来进入到这两个角色
首先我们是正常狗狗人家,我们看到的是两只病狗和47只正常狗狗,我们已经确定病狗数量大于1,现在能看看到的就已经有2只,大于1了,我们无法确定自家狗狗是不是生病了,但相反的是,病狗主人却可以.
病狗主人在度过第一天之后,知道了病狗数量大于1,而自己能看到的是1只病狗和48只正常狗狗,这说明自家的狗狗是生病的,从而也就确定自家狗狗生病了,赶紧开枪示意救狗狗.
接下来就是类推了,其实我们可以发现,第几天枪响就有几只生病的狗狗.有兴趣的可以继续往下推一推.或者上述的描述方法不好的地方希望大家包涵.

被折叠的 条评论
为什么被折叠?



