和與積的問題(英語:Sum and Product Puzzle)是一道邏輯謎題,又因為其題面上似乎缺乏足夠的解題信息而得名不可能的謎題(英語:The Impossible Puzzle)。該謎題由漢斯·弗賴登塔爾得於1969年首次發表,[1]而別名「不可能的謎題」則由馬丁·加德納所提出。[2]儘管略顯困難,此謎題仍然是可解的,並有很多與之類似的謎題。
此謎題有許多版本,以下為最原始的版本:
已知
和
是兩個大於1的整數,滿足
小于
,而兩數之和不大於100(即
,
,
)。
S和P則是兩位邏輯非常好的數學家。另外,S知道兩數之和
,P則知道兩數之積
。兩人都知道上述資訊後,對話如下:
- S先說:「P不知道
和
的值。」
- P回復:「現在我知道
和
的值了。」
- S再說:「現在我也知道
和
的值了。」
請問
和
兩數分別為多少?
P知道的乘積為52,S知道的和為17,換句話說,
。
以下將按對話順序分析數學家P和S的想法:
P:已知積
,
可能為
或
,因此不知兩數具體為何。
S:已知和
,
可能的情況如下:
可能的 組合 |
乘積  |
只考慮乘積時可能的解
|
 |
 |
、 、
|
 |
 |
、 、
|
 |
 |
、
|
 |
 |
、 、 、 、
|
 |
 |
、 、
|
 |
 |
、 、
|
 |
 |
、 、 、 、
|
由上表可知,在所有S認為可能的乘積
下,P皆不能確定兩數具體為何,因而說出:「P不知道
和
的值」。
P:若S能斷言自己(P)不知道兩數,則S手中的
對應的所有可能乘積,均可引出超過一組可能的解。
因此,P分別針對
和
的可能情況:
時,
而
,和
而
,兩個可能乘積都只能引出一種可能解,使得S無法斷言P不知道兩數。
時,經驗證後其滿足條件。
此時P確定
,
,因而說出:「現在我(P)知道
和
的值了」。
S:若P能宣告他知道
和
的值,則P手中的
對應的可能組合中,「恰好只有一組」的和
能滿足「所有對應的可能乘積,均可引出超過一組可能解。」的篩選條件。
因此,S分別針對自己手中的7種可能乘積進行模擬與排除:
可能乘積  |
P考慮的可能組合與對應的和  |
P核驗 是否滿足條件 |
結果
|
 |
 |
與 皆滿足 |
P無法確定
|
 |
 |
與 皆滿足 |
P無法確定
|
 |
 |
可拆為質數和 (不滿足);僅剩 滿足 |
P可確定答案 (唯一解)
|
 |
 |
與 皆滿足 |
P無法確定
|
 |
 |
與 皆滿足 |
P無法確定
|
 |
 |
與 皆滿足 |
P無法確定
|
 |
 |
與 皆滿足 |
P無法確定
|
由上表可知,唯有
時P可以排除其他干擾項並得出唯一解。
此時S確定
,
,因而說出:「現在我(S)也知道
和
的值了」。
謎題給出的基本條件稱為條件A:
,
,
。
令兩數之和為
,兩數之積為
,以下所有數對
皆預設符合條件A。
從S的第一句話可知,
所拆分出的每一組
,其乘積
皆可拆分成多於一組符合條件A的數對。因此,S在只知道
的情況下,便能肯定P無法單憑
確定
和
的值。(條件B)
從P的第一句話可知,P在知道
並得知
符合條件B後,檢視了
的所有可能分解
,發現其中「恰好只有一組」對應的和
符合條件B,故P得以確定
和
的值。(條件C)
從S的第二句話可知,S在得知P已確定答案後,檢視了
的所有可能拆分
,發現其中「恰好只有一組」對應的積
符合條件C,故S亦得以確定
和
的值。(條件D)
依據條件A,
的最小值為
,最大值為
。以下篩選出所有符合條件B的
可能值:
- 若
皆為質數,則
只有唯一分解,故
不可能拆分為兩個質數之和。由此可排除所有不小於
的偶數(根據哥德巴赫猜想,大於
的偶數皆可表示為兩個質數之和,且在
以內皆成立;注意到
不滿足
),以及「
奇質數」的形式。
- 若
(
為質數),則
僅有唯一分解
,故
不可能拆分為
,由此排除
。
- 若
含有大於
的質因數
,由於
,必定有
,故
僅有唯一分解
,由此排除所有不大於
且可拆為
及以上質數的
,即排除不小於
的整數。
- 若
(
為質數),由於
,
不可能為
,故
僅有唯一分解
,即
不可能為
。由此排除
。
剩餘的可能值為:
(記為集合
)
上述可能值皆符合條件B。因為
為奇數,任何拆分出的
必為一奇數
與一偶數
:
- 當
時,
必為合數(否則即為「
奇質數」,已被排除)。由於
,故
必有小於等於
的質因數
。乘積
可另拆為
與
,易知其和不大於
,符合條件A。
- 當
時:
- 若
,則乘積
亦可拆為
與
。由於
,其和
,符合條件A。
- 若
,則
為合數(
不是質數,因其
倍不在集合
中)。此時
,故
必有質因數
。乘積
可另拆為
與
,其和
,符合條件A。(亦可直接驗證,集合
中僅有
為
的倍數。)
接下來檢查集合
中的
可能值是否滿足條件D:
注意到若
(其中
為奇質數),則
僅有一組和為奇數的可能拆分
。因此,若其和
符合條件B(即屬於集合
),則
必然符合條件C。
可拆分為
與
,對應的乘積
(和為
)與
(和為
)皆符合條件C,故
不滿足條件D。
- 同理,
可拆為
與
;
可拆為
與
;
可拆為
與
;
可拆為
與
;
可拆為
與
,故
皆不滿足條件D。
剩餘需要檢查的
可能值為
:
拆分為
的積符合條件C。另外拆分為
時,積
可拆為
(和為
)與
(和為
),由於
與
皆不在集合
中(不符合條件B),故
的積亦符合條件C,導致
不滿足條件D。
拆分為
的積符合條件C。另外拆分為
時,積
可拆為
(和為
)與
(和為
),由於
與
皆不在集合
中,故
的積亦符合條件C,導致
不滿足條件D。
檢查
的各拆分組合:
的積可拆為
,和為
(符合條件B),故
的積不符合條件C。
- 同理,
的積可拆為
(和為
);
的積可拆為
(和為
);
的積可拆為
(和為
);
的積可拆為
(和為
);
的積可拆為
(和為
)。上述各拆分的積所對應的另一組拆分,其和皆屬於集合
(符合條件B),故這些拆分的積皆不符合條件C。
因此,
的所有拆分中,唯有拆分為
時其積才符合條件C,故
滿足條件D。
由於
是集合
中唯一滿足條件D的值,由此可得出
,
,
。
- ^ Hans Freudenthal, Nieuw Archief Voor Wiskunde, Series 3, Volume 17, 1969, page 152
- ^ Gardner, Martin, Mathematical Games: A Pride of Problems, Including One That Is Virtually Impossible, Scientific American, December 1979, 241: 22–30 .