煮酒论坛

 找回密码
 申请新用户
搜索
热搜: 活动 交友 discuz
查看: 4419|回复: 8

IBM公司的招聘题,必须在20分钟内答出

[复制链接]
发表于 2004-3-8 16:23:16 | 显示全部楼层 |阅读模式
你试试看:
------------------------

村子中有50个人,每人有一条狗。在这50条狗中有病狗(这种病不会传染)。于是人们就要找出病狗。每个人可以观察其他的49条狗,以判断它们是否生病,只有自己的狗不能看。观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的是病狗就要枪毙自己的狗,而且每个人只有权利枪毙自己的狗,没有权利打死其他人的狗。第一天,第二天都没有枪响。到了第三天传来一阵枪声,问有几条病狗,如何推算得出?
发表于 2004-3-15 09:03:15 | 显示全部楼层
3条狗!
 楼主| 发表于 2004-3-16 22:02:00 | 显示全部楼层
回答正确!

呵呵,论坛的朋友看来对逻辑的问题不感兴趣!
发表于 2004-3-18 20:49:36 | 显示全部楼层
不是不感兴趣,是我解答不出啊~~~~~
你们二位谁可以告诉我为什么啊
我到现在都想不通,很想知道耶
发表于 2004-3-18 20:53:27 | 显示全部楼层
此问题是个逻辑问题,你可以考虑用数学归纳法去想,我的基本思路如下:

1.假设只有1条病狗:病狗的主人看到其他49条狗都没有病,那么病狗的主人就知道是自己的狗有病,那么病狗的主人第一天就会把狗枪毙,也就是一条病狗,第一天就能听到枪响;

2.假设有2条病狗:也就是有病狗的主人有两个,第一天所有的主人都能看到至少1条病狗;根据假设1可知,如果只有一条病狗,第一天就会听到枪响;病狗的主人就知道不只1条病狗,但是两个病狗的主人只能看到一条病狗,那么自己那条狗肯定是病狗,就会开枪打死自己的狗,也就是说2条病狗,第二天就会听到枪响.

如此推断,n条病狗第n天会听到枪响;
现在是第3天听到枪响,那么病狗就有3条.


其实这个问题是个著名的逻辑问题的翻版,原题叫“脏童问题”,具体如下:

有若干儿童玩耍,一个大人对他们全体说:你们中有人额头上有脏。如果N个孩子脏,则在大人说N遍后脏童知道自己头上有脏。

推理如下:

推理可用数学归纳法:N=1时,当一个人脏时,他知道除自己外所有人都不脏,所以自己是脏的。
    假设N=K时成立,脏童看到N个脏童,而此时大家还不知道谁是脏童,故有N+1个,则自己为脏童。
    得证。



发表于 2004-3-18 21:04:13 | 显示全部楼层
可问题是
他们怎么知道是哪三个?还是
不需要考虑是哪三个?
发表于 2004-3-18 21:09:55 | 显示全部楼层
不对~
帖子发的有些匆忙了
给我时间想想
不好意思啊~~~~~~~~~
发表于 2004-3-19 18:53:29 | 显示全部楼层
我懂了
jb兄(我用这个称呼好象不合适啊),谢了
发表于 2004-3-19 20:09:34 | 显示全部楼层
怎么跟绕口令似的,呵呵。
看来,病狗的主人必须推论一下,才能杀了自己的狗。
您需要登录后才可以回帖 登录 | 申请新用户

本版积分规则

小黑屋|手机版|Archiver|守望轩 ( 湘ICP备17013730号-2 )|网站地图

GMT+8, 2018-9-26 05:25 , Processed in 0.036770 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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