设万维读者为首页 广告服务 联系我们 关于万维
简体 繁体 手机版
分类广告
版主:
万维读者网 > 灵机一动 > 帖子
一道经典概率题的三种解法
送交者: 高玉宝 2009年12月20日09:05:12 于 [灵机一动] 发送悄悄话

题目原文 (http://bbs.creaders.net/iq/bbsviewer.php?trd_id=429763)

有100个无期徒刑囚徒,被关在100个独立的小房间,互相无法通信。每天会有一个囚徒被随机地抽出来放风,随机就是说可能被抽到多次。放风的地方有一盏灯,囚徒可以打开或者关上,除囚徒外,没有别人会去动这个灯。每个人除非出来防风,是看不到这个灯的。

一天,全体囚徒大会,国王大赦,给大家一个机会:如果某一天,某个囚徒能够明确表示,所有的囚徒都已经被放过风了,而且的确如此,那么所有囚徒释放;如果仍有囚徒未被放过风,那么所有的囚徒一起处死!

囚徒大会后给大家20分钟时间讨论, 如果你是其中的一员,应怎样利用这20分钟的时间来制定一个切实可行的办法呢?

如果说是某一个囚犯一直无法抽到出去放风,那他们就确实无法出去了。不需要考虑这样的可能哦。


这题确实比较难。补充一下:不要去考虑什么犯人突然死亡的意外因素。是纯粹的理论题。


=================================================================================

==


解法1

既然是概率题,那就先试试概率的方法。

根据波松分布,在平均每人抽到五、六次后,一人没有被抽到的机率就几乎等于零了。为保险起见,取平均数为10,则为1000天。所以1000天后,任一囚徒就可宣布所有的囚徒都已经放过风了。但为了更保险,囚徒可选出一人甲,规定由甲来宣布所有的囚徒都已经放过风了。然后约定,如一囚徒第一次被抽到放风,就把灯打开(如灯是开着的,就让它开着)。另外,轮到甲放风时,如灯开着,就把灯关了。在1000天后,如甲连着三次(具体次数可以约定)没有看到灯被打开,就可宣布所有的囚徒都已经放过风了。既然是概率方法,那就有不确定性,所以这个方法是有风险的。

解法2

囚徒中选出一人甲。然后规定其他人第一次看到灯是关着的,就把灯打开。轮到甲放风,如灯是开着的,就把灯关了,并记数。

在甲关了99次灯后,就可宣布所有的囚徒都已经放过风了。当然这个方法就和概率无关了,且平均时间将要30年(但总比无期要好)。

这个方法是百分之百保险的,但期限可能会拖得很长。粱远声则改进了这方法(http://bbs.creaders.net/iq/bbsviewer.php?btrd_id=967978&btrd_trd_id=429763),可以大大缩短时间。他的方法就是甲(即组长)不是预先设定,而是在过程中自然产生。一开始,灯是开着的(第一天放风的那个囚徒如看到灯是关着的,则把它打开)。其他囚徒,在100天内,如第一次被抽到,或第二次被抽到但灯是关着的,则什么都不做。如被抽到第二次且灯是开着的,则他是第一个被抽到第二次的囚徒,他就是甲。如甲被第二次抽到时,是在第101天,则甲可以马上宣布所有囚徒都已被放过风了。如甲被第二次抽到时,是在第100天内,则甲把灯关了,然后记下当时的天数,把此数减掉2,作为关灯的次数。然后等到100天后,再根据我早先给的方法继续。这里我对粱远声的方法作了点小改动,即省掉了付组长的角色。

解法3

可能你也早已意识到(如没有,再仔细重读一下原题),原题中,国王并没有讲明每次放风,一定要在大赦会以后的才算。所以,囚徒们可以在那20分钟时间内,统计一下被放过风的囚徒数。如全都放过风了,马上就可宣布所有囚徒都已被放过风了。如还有没有被放过风的,则可根据解法2继续(甲可在没有放过风的囚途中选出,放过风的囚徒则什么都不做)。当然这个方法也和概率无关,但最有效。呵呵。

 

0%(0)
0%(0)
标 题 (必选项):
内 容 (选填项):
实用资讯
回国机票$360起 | 商务舱省$200 | 全球最佳航空公司出炉:海航获五星
海外华人福利!在线看陈建斌《三叉戟》热血归回 豪情筑梦 高清免费看 无地区限制
一周点击热帖 更多>>
一周回复热帖