雏鹰部落

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3970|回复: 9

一道笔试题

[复制链接]
发表于 2010-5-10 23:54:48 | 显示全部楼层 |阅读模式
村子中有50个人,每人有一条狗。在这50条狗中有病狗(这种病不会传染)。于是人们就要找出病狗。
每个人可以观察其他的49条狗,以判断它们是否生病(如果有病一定能看出来),只是自己的狗不能看。观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的是病狗就要枪毙自己的狗(发现后必须在一天内枪毙),而且每个人只有权利枪毙自己的狗,没有权利打死其他人的狗。
第一天大家全看完了,但枪没有响,第二天仍没有枪响。到了第三天传来一阵枪声,问村里共有几条病狗,如何推算得出?


采用逆推法和排除法,是算法类题目
发表于 2010-5-11 13:29:38 | 显示全部楼层
:curse:
xiao8206 该用户已被删除
发表于 2010-5-11 18:14:55 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2010-5-12 09:15:34 | 显示全部楼层
枪响过后,“天下无狗”
发表于 2010-5-12 13:21:58 | 显示全部楼层
~~
 楼主| 发表于 2010-5-13 13:00:49 | 显示全部楼层
答案是三条,就用排除法
发表于 2010-5-15 10:35:20 | 显示全部楼层
回复 6# 朴朴


    村民们事前知道有几条病狗吗?
如果知道的话,不是第一天都能听到枪响,如果不知道,那又是怎么得出这个结论的?
 楼主| 发表于 2010-5-15 12:13:43 | 显示全部楼层
知道有病狗,但是不知道几条。
如果只有一条,那么病狗主人马上知道是自己的,第一天就枪响了。
如果有两条病狗,分别是属于a,b的,第一天a看到一条病狗,枪不会响;第二天,a看到那一条病狗还在,那么a可以马上推断出50条狗里面,病狗的数量不是一条,也不是三条,因此只能是两条....两条病狗,他看到一条,那么还剩的一条就肯定是自己的,因此枪响,b的推断过程和a相同。
第三天枪响的推断过程同上。
发表于 2010-5-17 14:48:35 | 显示全部楼层
汗···楼上的有理!!
发表于 2010-7-12 20:59:48 | 显示全部楼层
楼上说的有点道理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|熊猫同学技术论坛|小黑屋| 网络工程师论坛 ( 沪ICP备09076391 )

GMT+8, 2024-12-22 21:57 , Processed in 0.085482 second(s), 19 queries , Gzip On.

快速回复 返回顶部 返回列表