字词模式
句模式
段模式
系统设置
更多按钮
网址切换
保存状态
用户反馈
页面收藏
-AA+
小学数学故事:海盗分金问题

小学数学故事:海盗分金问题

海盗,大家听说过吧。这是一帮亡命之徒,在海上抢人钱财,夺人性命,干的是刀头上舔血的营生。在我们的印象中,他们一般都瞎一只眼,用条黑布或者讲究点的用个黑皮眼罩把坏眼遮上。他们还有在地下埋宝的好习惯,而且总要画上一张藏宝图,以方便后人掘取。不过大家是否知道,他们是世界上最民主的团体。参加海盗的都是桀骜不驯的汉子,是不愿听人命令的,船上平时一切事都由投票解决。船长的唯一特权,是有自己的一套餐具--可是在他不用时,其他海盗是可以借来用的。船上的唯一惩罚,就是被丢到海里去喂鱼。

现在船上有若干个海盗,要分抢来的若干枚金币。自然,这样的问题他们是由投票来解决的。投票的规则如下:先由最凶猛的海盗来提出分配方案,然后大家一人一票表决,如果有 50%或以上的海盗同意这个方案,那么就以此方案分配,如果少于 50%的海盗同意,那么这个提出方案的海盗就将被丢到海里去喂鱼,然后由剩下的海盗中最凶猛的那个海盗提出方案,依此类推。

我们先要对海盗们作一些假设。

1)每个海盗的凶猛性都不同,而且所有海盗都知道别人的凶猛性,也就是说,每个海盗都知道自己和别人在这个提出方案的序列中的位置。另外,每个海盗的数学和逻辑都很好,而且很理智。最后,海盗间私底下的交易是不存在的,因为海盗除了自己谁都不相信。

2)一枚金币是不能被分割的,不可以你半枚我半枚。

3)每个海盗当然不愿意自己被丢到海里去喂鱼,这是最重要的。

4)每个海盗当然希望自己能得到尽可能多的金币。

5)每个海盗都是现实主义者,如果在一个方案中他得到了 1枚金币,而下一个方案中,他有两种可能,一种得到许多金币,一种得不到金币,他会同意目前这个方案,而不会有侥幸心理。总而言之,他们相信二鸟在林,不如一鸟在手。

6)最后,每个海盗都很喜欢其他海盗被丢到海里去喂鱼。在不损害自己利益的前提下,他会尽可能投票让自己的同伴喂鱼。

现在,如果有 10个海盗要分 100枚金币,将会怎样?

要解决这类问题,我们总是从最后的情形向后推,这样我们就知道在最后这一步中什么是好的和坏的决定。然后运用这个知识,我们就可以得到最后第二步应该作怎样的决定,等等等等。要是直接就从开始入手解决问题,我们就很容易被这样的问题挡住去路:"要是我作这样的决定,下面一个海盗会怎么做?"

以这个思路,先考虑只有 2个海盗的情况(所有其他的海盗都已经被丢到海里去喂鱼了)。记他们为 P 1P 2,其中 P 2比较凶猛。 P 2的最佳方案当然是:他自己得 100枚金币, P 10枚。投票时他自己的一票就足够 50%了。

往前推一步。现在加一个更凶猛的海盗 P 3 P 1知道 - - P 3知道他知道 - -如果 P 3的方案被否决了,游戏就会只由 P 1P 2来继续,而 P 1就一枚金币也得不到。所以 P 3知道,只要给 P 1一点点甜头, P 1就会同意他的方案(当然,如果不给 P 1一点甜头,反正什么也得不到, P 1宁可投票让 P 3去喂鱼)。所以 P 3的最佳方案是: P 11枚, P 2什么也得不到, P 399枚。

P 4的情况差不多。他只要得两票就可以了,给 P 2一枚金币就可以让他投票赞同这个方案,因为在接下来 P 3的方案中 P 2什么也得不到。 P 5也是相同的推理方法只不过他要说服他的两个同伴,于是他给每一个在 P 4方案中什么也得不到的 P 1P 3一枚金币,自己留下 98枚。

依此类推, P 10的最佳方案是:他自己得 96枚,给每一个在 P 9方案中什么也得不到的 P 2P 4P 6P 8一枚金币。

下面是以上推理的一个表( Y表示同意, N表示反对):

P 1 P 2

0100

NY

P 1 P 2 P 3

1099

YNY

P 1 P 2 P 3 P 4

01099

NYNY

P 1 P 2 P 3 P 4 P 5

101098

YNYNY

……

P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8 P 9 P 10

01010101096

NYNYNYNYNY

现在我们将海盗分金问题推广:

1)改变一下规则,投票中方案必须得到超过 50%的票数(只得到 50%票数的方案的提出者也会被丢到海里去喂鱼),那么如何解决 10个海盗分 100枚金币的问题?

2)不改变规则,如果让 500个海盗分 100枚金币,会发生什么?

3)如果每个海盗都有 1枚金币的储蓄,他可以把这枚金币用在分配方案中,如果他被丢到海里去喂鱼,那么他的储蓄将被并在要分配的金币堆中,这时候又怎样?

通过对规则的细小改变,海盗分金问题可以有许多变化,但是最有趣的大概是 1)和 2)(规则仍为 50%票数即可)的情况,本帖只对这两种情况进行讨论。

首先考虑 1)。现在只有 P 1P 2的情形变得对 P 2其糟无比: 1票是不够的,可是就算他把 100枚金币都给 P 1P 1也照样会把他丢到海里去。可是 P 2很关键,因为如果 P 3进行分配方案的话,即使他一枚金币也不给 P 2P 2也会同意,这样一来 P 3就有 P 2这张铁票! P 3的最佳方案就是:独吞 100枚金币。

P 43张票,而 P 3是一定反对他的,而如果不给 P 2一点甜头, P 2也会反对,因为 P 2可以在 P 3的方案中得救,目前为什么不把 P 4丢到海里呢?所以要分别给 P 1P 2一枚金币,这样 P 4就有包括他自己 1票的 3票。 P 4的方案为: P 1P 2每人 1枚金币,他自己 98枚。

P 5的情况要复杂点,他也要 3票。 P 4是会反对他的,所以不用给,给 P 3一枚金币就能使他支持自己的方案,因为在接下来的 P 4方案中他什么也得不到。问题是 P 1P 2:只要其中有一个支持就可以了。可是只给 1枚金币是不行的, P 4方案中他们一定有 1枚金币可得,所以只要在他们中随便选一个,给 2枚金币,另一个就对不起了,不给。这样 P 5的方案是:自己 97枚, P 31枚, P 1P 22枚。

P 6的方案建立在 P 5的上面,只要给每个 P 5方案中不得益的海盗 1枚金币。要注意的是, P 1P 2都应该看作在 P 5方案中不得益的:他们可能得 2枚,可是也可能 1枚不得,所以只要 P 6给他们 1枚金币,根据"二鸟在林,不如一鸟在手"的原则,就可以让他们支持 P 6的方案。所以 P 6的方案是唯一的: P 1P 2P 4每人 1枚金币, P 6自己拿 97枚。

这样继续下去, P 9的方案是: P 3P 5P 7每人 1枚金币,然后在 P 1P 2P 4P 6中任选一人给 2枚金币, P ANOAHDIGITAL 10自己得 ANOAHDIGITAL 11枚。最后, P 10的方案是唯一的: P 1P 2P 4P 6P 8每人 1枚金币, P 10自己得 95枚。

2)是最有趣的(提醒:我们回到 50%票即可的规则)。原题解中的推理过程直到 200个海盗都是成立的: P 200给每个偶数号的海盗 1枚金币,包括他自己,其他海盗什么也得不到。P 201开始,继续推理就变得有点困难了: P 201为了不被丢到海里去,必须什么也不留给自己,而给从 P 1P 199中所有奇数号海盗每人 1枚金币,从而争取到 100票,加上他自己 1票,逃过一劫。 P 202也什么都得不到,他必须用这 100枚金币买通 100个从 P 201的方案中什么也得不到的海盗,要注意到现在这个方案不是唯一的: P 201的方案中得不到金币的海盗是所有奇数号的海盗,有 101个(包括 P 201),所以有 101种方案。

P 203必须得到 102票,除了自己的 1票外,他只有 100枚金币,所以只能买到 100票,所以可怜的家伙就被丢到海里喂鱼了。但是, P 203是个很重要的角色,因为 P 204知道如果自己的方案不被通过, P 203也一样会完蛋,所以他有 P 203的一张铁票。所以 P 204可以大出一口气:他自己一票,加上 P 203一票,然后加上用 100枚金币买的确 100票,他就得救了! 100个有幸得到 1枚金币的海盗,可以是 P 1P 202中任何 100个:因为其中的偶数号的从 P 202的方案中什么也得不到,如果 P 204给他们中某个海盗 1枚金币,这个海盗一定会赞同这个方案;而编号为奇数的海盗呢,只是有可能从 P 202的方案中得益罢了(可能性为 100/101),所以根据"二鸟在林,不如一鸟在手"的原则,如果能得到 ANOAHDIGITAL 10枚金币,他也会赞同这个方案。

接下去 P 205是不能把希望放在 P 203P 204这两张票上的,因为就算他被丢到海里去, P 203P 204还可以通过 P 204的方案机会活下来。 P 206虽然可以靠 P 205的铁票,加上自己 1票和 100枚金币搞到的 100票,只有 102票,所以他也被丢到海里喂鱼。 P 207好不了多少,他需要 104票,而他自己以及 P 205P 206的铁票加上 100枚金币搞到的 100票只有 103- -只好下海。

P 208运气比较好,他同样也要 104票,可是 P 205P 206P 207都会投票赞成他的方案!加上他自己的 1票和买来的 100票,他终于逃脱了做鱼食的命运。

这样我们就有了一种可以一直推下去的新逻辑。海盗可以什么也不留给自己,买上 100票,然后依靠一部分一定会被丢下海的海盗的铁票,从而让自己的方案通过。有这样运气的海盗分别是 P 201P 202P 204P 208P 216P 232P 264P 328P 456……我们看到这样的号码是 200加上一个 ANOAHDIGITAL 10的次幂。

哪些海盗是受益者呢,显然铁票是不用(不能)给金币的。所以只有上一个幸运号码及他以前的那些海盗才有可能得到 1枚金币。于是我们得到 500海盗分 100枚金币的结论是:前 44个最凶猛的海盗被丢进海里,然后 P 456P 1P 328中的 100个海盗每人 1枚金币。

就这样,最凶猛的海盗被丢进海里,而比较凶猛的什么也得不到,而只有最温柔的那些海盗,才有可能得到 1枚金币。正如《马太福音》所说:"温柔的人有福了,因为他们必承受地土!"