第六百五十七章 康威两个巫师的谜语

2022-05-07 作者: 蔡泽禹
第六百五十七章 康威两个巫师的谜语

20世纪60年代,康威设计了一个极其棘手的谜题,直到最近才引发了很多讨论,2013年,麻省理工学院的塔尼亚·霍瓦诺娃发表了一篇论文。以下是那篇论文中出现的谜题:

昨天晚上,我在一辆公共汽车上坐在两个巫师后面,听到了下面的话:

a:“我有正整数个数的孩子,他们的年龄是正整数,和是这辆车的车号,乘积是我自己的年龄。”

B:“如果您把您的年龄和孩子的数目告诉我,也许我就能算出他们每个人的年龄了。”

a:“不。”

B:“啊哈!我终于知道你多大了!”

公交车的车号是多少?

当然,你必须假定巫师B知道公交车的车号。还要注意,巫师们可以非常年轻,也可以非常年老,巫师a很可能是两万岁的老人。

下面是解题过程,我只能在程序的帮助下完全理解和验证。我不能重现所有的计算,但你可以相信我的话。

让我们把巫师a的年龄记为a,把公交车车牌记为b,把巫师a的孩子数记为c。例如,假设车号为b5。以下是孩子的数量、年龄分布和巫师a的年龄:

c5,年龄分别为1,1,1,1,1;因此a1;

c4,年龄分别为1,1,1,2;因此a2;

c3,年龄分别为1,1,3;因此a3;

c3,年龄分别为1,2,2;因此a4;

c2,年龄分别为1,4;因此a4;

c2,年龄分别为2,3;因此a6;

c1,年龄分别为5;因此a5;

在每种情况下,知道巫师a的年龄和孩子的数量表明后者可能的年龄。因为巫师a回答“不”,而巫师B知道车号,这意味着b不等于5。

类似地,你可以通过逐个验算可能的车号来解决这个问题,找出那些可以知道巫师的年龄和他的孩子的数量,但不能知道每个孩子的年龄的车号(这个车号的属性标记为P)。计算b1,2,3,…12(就像我们刚才对b5所做的那样),结果表明b12是拥有P的最小数。

事实上,对于b12和c4,这四个孩子有两组可能的年龄——(2,2,2,6)和(1,3,4,4),这两组给出巫师的年龄都是相同的:a48。因此,对于b12,即使知道c4,a48,也无法推断出这四个孩子的年龄。这是否意味着b12是解?

不幸的是,并不一定。对于车号b13的情况,例如,这三个孩子的两组年龄——(1,6,6)和(2,2,9),a36,巫师B不能从巫师a的年龄或他的孩子的数量得出他的孩子的年龄。

知道b12并不比知道b13更能确定孩子的年龄。当面对这个谜题时,大多数人经常回答“b12”,好像这个谜题在某种程度上暗示了b的最小可能解是正确的。但谜题并没有做出这样的断言。此外,如果没有进一步的推理,你无法在b12和b13之间进行选择,也无法在b的其他值之间进行选择,正如我进一步的计算所显示的那样。

然而b12才是正确答案,其原因是这个谜题中最有趣和最意想不到的部分。康威精心设计了他的谜题,你必须考虑巫师B的最后陈述,在巫师a的“不”之后,巫师B回答说,“啊哈!我终于知道你多大了!”这样就排除了b13。

事实上,对于b13,有两个额外的年龄集——(1,2,2,2,6)和(1,1,3,4,4),可以得出a48。换句话说,如果车号是13,巫师B不能从他的否定答案中推断出巫师a的年龄,因为他的年龄可以是36或48。因此,应该排除b13。

然而,当我们考虑b13的年龄序列并加上1时,消去b13就会排除b14。这样做表明,儿童的年龄集——(1,1,6,6)和(1,2,2,9)——的乘积是a36,而另两个年龄集——(1,1,2,2,6)和(1,1,1,3,4,4)——的乘积是a48。同样可以排除b15,并且一个接一个地排除了所有大于12的b。

因此,只有车号12(b12)以及两个年龄集(2,2,2,6)和(1,3,4,4)唯一决定了巫师a的年龄:a48。

我承认我不明白康威是如何想出这个令人难以置信的谜题的!

关闭