和与积的问题

和与积的问题(英语:Sum and Product Puzzle)是一道逻辑谜题,也称为不可能的谜题(英语:The Impossible Puzzle),因为它的题面似乎缺乏足够的解题信息。该谜题由汉斯·弗赖登塔尔得英语Hans Freudenthal在1969年首次发表[1] ,而“不可能的谜题”这个名字是由马丁·加德纳所提出的[2]。这个谜题是可以解开的,尽管略显困难。还有很多与之类似的谜题。

谜题 编辑

注:这谜题有很多个版本。这里用最原始的版本。
X和Y是二个整数,大于1,和不大于100,而X严格小于Y (1 < X < Y, X+Y ≦100)。

S和P是两个数学家,逻辑都非常好。S知道两者的和 X+Y。P知道两者的积 XY。两个人都知道上述的资讯后的对话如下:

  • S说:“P不知道X和Y的值。”
  • P说:“我知道X和Y的值了。”
  • S说:“现在我也知道X和Y的值了。”

X和Y分别是多少?

解答 编辑

答案是 X 和 Y 分别是4和13,P一开始知道的乘积是52,S一开始知道的和是17。

一开始P不知道答案,因为有两个可能性

52 = 4 × 13 = 2 × 26

而S也知道P不知道答案,因为所有加起来为17,符合规则的数字,相乘后的乘积都无法由乘积直接反推XY。 但S和P都可以根据对方的说明删除一些不符合说明的解,因此得到答案。

详解 编辑

数学家P和数学家S如何得到答案 编辑

数学家P 编辑

令p为两数之积,s为两数之和。

P知道p=52,P猜测(2,26)和(4,13)可能是答案,因此P知道s=28或s=17。

若s=28:

可能答案会是(2,26)、(3,25)、(4,24)、(5,23)、(6,22)、(7,21)、(8,20)、(9,19)、(10,18)、(11,17)、(12,16)及(13,15)。
但若答案是(5,23),5*23的乘积(115)无法再表示为其他两个大于一数字的乘积,因此若答案是(5,23),P就知道答案了。
而若答案是(11,17),11*17的乘积(187)无法再表示为其他两个大于一数字的乘积,因此若答案是(11,17),P就知道答案。
P有可能知道X和Y的值,因此S不能断定说“P不知道X和Y的值。”

若s=17:

可能答案会是(2,15)、(3,14)、(4,13)、(5,12)、(6,11)、(7,10)及(8,9)。
每组数字中都至少有一个是合数,因此乘积可以表示为其他两个大于一数字的乘积,S可以确定P不会知道正确的数字。
因此S可以说“P不知道X和Y的值。”

因此当S说“P不知道X和Y的值。”时,P可以删除(2,26),剩下的(4,13)就是答案。

数学家S 编辑

S知道s=17,可能的答案有(2,15)、(3,14)、(4,13)、(5,12)、(6,11)、(7,10)及(8,9)。S知道p可能是30、42、52、60、66、70或72。

当P说:“我知道X和Y的值了。”时,S可以知道P依照对话可排除大部分的可能解,只留下一个可能解。

S模拟P的想法 编辑

情形1(p=30)

P知道p=30,可能的答案有(2,15)、(3,10)及(5,6)。P知道s可能是17、13或11。

若s=17:

S会猜可能答案是(2,15)、(3,14)、(4,13)、(5,12)、(6,11)、(7,10)及(8,9),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”

若s=13:

S会猜可能答案是(2,11)、(3,10)、(4,9)、(5,8)及(6,7),其中(2,11)都是质数。
若答案是(2,11),P就知道正确数字了。
S不能说“P不知道X和Y的值。”

若s=11:

S会猜可能答案是(2,9)、(3,8)、(4,7)及(5,6)。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”
因此若S说 “P不知道X和Y的值。”时,P可以排除(3,10),可能答案有(2,15)及(5,6),并不唯一。
情形2(p=42)

P知道p=42,可能的答案有(2,21)、(3,14)及(6,7)。P知道s可能是23、17或13。

若s=23:

S会猜可能答案是(2,21)、(3,20)、(4,19)、(5,18)、(6,17)、(7,16)、(8,15)、(9,14)、(10,13)及(11,12).
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”

若s=17:

S会猜可能答案是(2,15)、(3,14)、(4,13)、(5,12)、(6,11)、(7,10)及(8,9),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”

若s=13:

S会猜可能答案是(2,11)、(3,10)、(4,9)、(5,8)及(6,7),其中(2,11)都是质数。
若答案是(2,11),P就知道正确数字了。
S不能说“P不知道X和Y的值。”
因此若S说 “P不知道X和Y的值。”时,P可以排除(6,7),可能答案有(2,21)及(3,14),并不唯一。
情形3(p=52 )
参考数学家P实际的思考方式
情形4(p=60)

P知道p=60,可能的答案有(2,30)、(3,20)、(4,15)、(5,12)及(6,10)。P知道s可能是32、23、19、17或16。

若s=32:

根据哥德巴赫猜想及其实际验证表明,至少 以下的偶数都能表示成两个质数的和,因此32可以表示为二个质数的和((3,29)和(13,19))。
若答案是(3,29)或(13,19),P就知道正确数字了。
S不能说“P不知道X和Y的值。”

若s=23:

S会猜可能答案是(2,21)、(3,20)、(4,19)、(5,18)、(6,17)、(7,16)、(8,15)、(9,14)、(10,13)及(11,12),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”

若s=19:

S会猜可能答案是(2,17)、(3,16)、(4,15)、(5,14)、(6,13)、(7,12)、(8,11)及(9,10),其中(2,17)都是质数。
若答案是(2,17),P就知道正确数字了。
S不能说“P不知道X和Y的值。”

若s=17:

S会猜可能答案是(2,15)、(3,14)、(4,13)、(5,12)、(6,11)、(7,10)及(8,9),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”

若s=16:

根据哥德巴赫猜想及其实际验证表明,16可以表示为二个质数的和((3,13)和(5,11))。
若答案是(3,13)或(5,11),P就知道正确数字了。
S不能说“P不知道X和Y的值。”
因此若S说 “P不知道X和Y的值。”时,P可以排除(2,30), (4,15)及(6,10),而可能答案有(3,20)及(5,12),并不唯一。
情形5(p=66)

P知道p=66,可能的答案有(2,33)、(3,22)及(6,11)。P知道s可能是35、25或17。

若s=35:

S会猜可能答案是(2,33)、(3,32)、(4,31)、(5,30)、(6,29)、(7,28)、(8,27)、(9,26)、(10,25)、(11,24)、(12,23)、(13,22)、(14,21)、(15,20)、(16,19)及(17,18),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”

若s=25:

S会猜可能答案是(2,23)、(3,22)、(4,21)、(5,20)、(6,19)、(7,18)、(8,17)、(9,16)、(10,15)、(11,14)及(12,13),其中(2,23)都是质数。
若答案是(2,23),P就知道正确数字了。
S不能说“P不知道X和Y的值。”

若s=17:

S会猜可能答案是(2,15)、(3,14)、(4,13)、(5,12)、(6,11)、(7,10)及(8,9),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”
因此若S说 “P不知道X和Y的值。”时,P可以排除(3,22),而可能答案有(2,33)及(6,11),并不唯一。
情形6(p=70)

P知道p=70,可能的答案有(2,35)、(5,14)及(7,10)。P知道s可能是37、19或17。

若s=37:

S会猜可能答案是(2,35)、(3,34)、(4,33)、(5,32)、(6,31)、(7,30)、(8,29)、(9,28)、(10,27)、(11,26)、(12,25)、(13,24)、(14,23)、(15,22)、(16,21)、(17,20)及(18,19),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”

若s=19:

S会猜可能答案是(2,17)、(3,16)、(4,15)、(5,14)、(6,13)、(7,12)、(8,11)及(9,10),其中(2,17)都是质数。
若答案是(2,17),P就知道正确数字了。
S不能说“P不知道X和Y的值。”

若s=17:

S会猜可能答案是(2,15)、(3,14)、(4,13)、(5,12)、(6,11)、(7,10)及(8,9),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”
因此若S说 “P不知道X和Y的值。”时,P可以排除(5,14),而可能答案有(2,35)及(7,10),并不唯一。
情形7(p=72)

P知道p=72,可能的答案有(2,36)、(3,24)、(4,18)、(6,12)及(8,9)。P知道s可能是38、27、22、18或17。

若s=38:

根据哥德巴赫猜想及其实际验证表明,38可以表示为二个质数的和((7,31))。
若答案是(7,31),P就知道正确数字了。
S不能说“P不知道X和Y的值。”

若s=27:

S会猜可能答案是(2,25)、(3,24)、(4,23)、(5,22)、(6,21)、(7,20)、(8,19)、(9,18)、(10,17)、(11,16)、(12,15)及(13,14),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”

若s=22:

根据哥德巴赫猜想及其实际验证表明,22可以表示为二个质数的和((3,19)或(5,17))。
若答案是(3,19)或(5,17),P就知道正确数字了。
S不能说“P不知道X和Y的值。”

若s=18:

根据哥德巴赫猜想及其实际验证表明,18可以表示为二个质数的和((5,13)或(7,11))。
若答案是(5,13)或(7,11),P就知道正确数字了。
S不能说“P不知道X和Y的值。”

若s=17:

S会猜可能答案是(2,15)、(3,14)、(4,13)、(5,12)、(6,11)、(7,10)及(8,9),每组数字中都至少有一个是合数。
S可以确定P不会知道正确的数字。
S可以说“P不知道X和Y的值。”
因此若S说 “P不知道X和Y的值。”时,P可以排除(2,36)、(4,18)和(6,12),而可能答案有(3,24)及(8,9),并不唯一。

只有情形3最后只有一个可能答案,因此S可以确定(4,13)是正确答案。

读者如何得到答案 编辑

问题给出的条件是

X, Y 是两个整数,适合1 < X < Y,X + Y ≤ 100。(条件1)

令两数之和为s,两数之积为p。以下提到的(x,y),都指符合条件1的一对整数x和y。

从S的第一句话,p可分解成多于一个(x,y)。而且S虽不知道p的值,但检查了s可分拆成的所有(x,y)后,其积xy都有多于一个分解符合条件1,因此S可以肯定P不知道X, Y的值。(条件2)

从P的第一句话,P知道p的值,也知道s符合条件2。检查了p可分解成的所有(x,y),只有一个的和x + y符合条件2,所以P得到X, Y的值。(条件3)

从S的第二句话,S知道s的值,也知道P的分析,推出p符合条件3。检查了s可分拆成的所有(x,y),只有一个的积xy符合条件3,所以S得到X, Y的值。(条件4)

按条件1,s的可能值最小是2 + 3 = 5,最大是100。以下找出s的所有符合条件2的可能值:

  • 若(x,y)都是质数,则xy有唯一分解,故s不可分拆为(符合条件1的)质数对。排除不小于8的偶数,及2+奇质数。(按照哥德巴赫猜想,大于2的偶数都是两个质数的和,且对不太大的偶数都成立。不过6不是两个相异质数的和。)
  • 若xy = q3,q是质数,则xy有唯一分解(q,q2),故s不可能分拆为(q,q2)。排除6 = 2 + 22
  • 若xy有大于50的质因数q,由于y < 100,因此y = q,即xy有唯一分解(x,q),故s不可能分拆为(x,53)。排除不小于53 + 2 = 55的整数。
  • 若xy = 2q2,q > 10是质数,由于y < 100,y不等于q2,因此xy有唯一分解(q,2q),故s不可能为3q。排除51 = 3·17。

s的余下的可能值为

11, 17, 23, 27, 35, 37, 41, 47, 53. (*)

以上的可能值都符合条件2:因为s是奇数,任何分拆出的(x,y)必为一个奇数a和一个偶数2b。

  • 当b = 1时,a是合数,a ≤ 53 - 2 = 51,故有质因子q ≤ 7,xy = 2a 可分解成a/q和2q,易知其和小于100,符合条件1。
  • 当b > 1时,
若a ≠ b,则xy = 2ab 也可分解成2a和b。因为a ≤ 53 - 4 = 49,
2a + b = a + 2b + (a - b) = s + (a - b) ≤ 53 + (49 - 2) = 100
符合条件1;
若a = b时,a是合数(a不是大于10的质数,也不是小于10的质数,因其3倍都不是s的可能值),a = s/3 ≤ 53/3 < 18,故有质因子3,则xy = 2a2也可分解成2a/3和3a,
2a/3 + 3a < 66
符合条件1。(也可直接验证,此时s的可能值是3a,而(*)中只有27是3的倍数。)

以下检查s的符合条件2的可能值,即(*)中的值,是否满足条件4:

注意到若p = 2k q,其中q是奇质数,则p仅有一个(符合条件1的)分解2k和q,使其和是奇数,故此若其和2k + q符合条件2,则p满足条件3。

  • 11可分拆成(4,7)和(8,3),从上得知两者的积28和24都符合条件3,故11不满足条件4。
  • 类似地,23可分拆成(4,19)和(16,7),27可分拆成(4,23)和(8,19),35可分拆成(4,31)和(16,19),37可分拆成(8,29)和(5,32),47可分拆成(4,43)和(16,31),故23, 27, 35, 37, 47都不满足条件4。

余下需要检查s的可能值 17, 41, 53。17可分拆成(4,13),41可分拆成(4,37),53可分拆成(16,37),这些分拆的积都符合条件3。

  • 41分拆成(2,39),其积78分解成(6,13),和为19;其积分解成(3,26),和为29,都不符合条件2,故(2,39)的积符合条件3,41不满足条件4。
  • 53分拆成(5,48),其积240分解成(15,16),和为31;其积分解成(3,80),和为83,都不符合条件2,故(5,48)的积符合条件3,53不满足条件4。

检查17的各分拆:

  • (2,15)的积可分解为(5,6),其和11符合条件2,故(2,15)不符合条件3。
  • 类似地,(3,14)的积可分解为(2,21),和为23;(5,12)的积可分解为(3,20),和为23;(6,11)的积可分解为(2,33),和为35;(7,10)的积可分解为(2,35),和为37;(8,9)的积可分解为(3,24),和为27。各积的上述另一分解的和都符合条件2,故各积都不符合条件3。

因此17分拆成(4,13),其积才符合条件3,故17满足条件4。

由于17是(*)中唯一满足满件4的值,得出s = 17, X = 4, Y = 13。

相关条目 编辑

参考 编辑

  1. ^ Hans Freudenthal, Nieuw Archief Voor Wiskunde, Series 3, Volume 17, 1969, page 152
  2. ^ Gardner, Martin, Mathematical Games: A Pride of Problems, Including One That Is Virtually Impossible, Scientific American, December 1979, 241: 22–30 .

外部链接 编辑