当初查找时没有记载链接,此处声明本文大体为转载。
2~100之间的两个数,把和告诉A,把积告诉B。问A知不知道这两个数是哪两个,A说:“虽然我不知道,但是我肯定B也不知道”。再问B,B说:“本来我不知道,但是听到A这么说,现在我知道了”。A听到B说他知道了,然后就说:“现在我也知道了”。那么你知道这两个数都是什么吗?
分析:(1)A先说:”虽然我不知道,但是我肯定B也不知道。“从这句话我们得到的信息是,B知道的数肯定不是两个素数相乘的结果。
因此A知道的数就不可能是两个素数的和,可以排除在2~100之间两个加数同时是素数的和。像2=1+1,5=2+3,10=5+5……
余下的数字是:11,17,23,27,29,35,37,41,47,51,53,57,59……
有上面的和推出积的可能性:
11 -》 18,24,28,30
17 -》 30,42,52,60,66,70,72
23 -》 42,60,76,90,102,112,120
27 -》 50,72,92,110,126,140,152……
29 -》 54,78,100,120,115,138,154……
35 -》 66,96,124,150,174,196……
……
……
……
(2)B说:“本来我不知道,但是听到A这么说,现在我知道了”。此句话证明了一个积不可能对应不同的和。
删除上式中重复的元素,像30,42,72……
得到:
11 -》 18,24,28
17 -》 52
23 -》 42,76
27 -》 50,92……
29 -》 54,78……
35 -》 96,124……
(3)A听到B知道了,也说”自己知道了“。可见积是唯一的。
由于上面列出的式子中只有一行是唯一的,因此也就知道了结果。
结果是:A知道的和是17,B知道的积是52,两个数是4和13.