有書友在留言區(qū)要求老夏貼出“鬼谷子算”的解法,。老夏就搜羅幾種解法貼出來,,和書友共享
解題思路1:
假設(shè)數(shù)為X,Y;和為X+Y=A,積為X*Y=B.
根據(jù)龐第一次所說的:“我肯定你也不知道這兩個數(shù)是什么”。由此知道,X+Y不是兩個素數(shù)之和,。那么A的可能11,17,23,27,29,35,37,41,47,51,53,57,59,65,67,71,77,79,83,87,89,95,97.
我們再計算一下B的可能值:
和是11能得到的積:18,24,28,30
和是17能得到的積:30,42,52,60,66,70,72
和是23能得到的積:42,60...
和是27能得到的積:50,72...
和是29能得到的積:...
和是35能得到的積:66...
和是37能得到的積:70...
......
我們可以得出可能的B為....,,當(dāng)然了,,有些數(shù)(30=5*6=2*15)出現(xiàn)不止一次,。
這時候,孫依據(jù)自己的數(shù)比較計算后,“我現(xiàn)在能夠確定這兩個數(shù)字了,?!?p> 我們依據(jù)這句話,和我們算出來的B的集合,,我們又可以把計算出來的B的集合刪除一些重復(fù)數(shù),。
和是11能得到的積:18,24,28
和是17能得到的積:52
和是23能得到的積:42,76...
和是27能得到的積:50,92...
和是29能得到的積:54,78...
和是35能得到的積:96,124...
和是37能得到的積:,...
......
因為龐說:“既然你這么說,我現(xiàn)在也知道這兩個數(shù)字是什么了,?!蹦敲从珊偷贸龅姆e也必須是唯一的,由上面知道只有一行是剩下一個數(shù)的,,那就是和17積52。那么X和Y分別是4和13,。
解題思路2:
說話依次編號為S1,,P1,S2,。
設(shè)這兩個數(shù)為x,,y,和為s,,積為p,。
由S1,P不知道這兩個數(shù),,所以s不可能是兩個質(zhì)數(shù)相加得來的,,而且s<=41,因為如果s>41,,那么P拿到41×(s-41)必定可以猜出s了(關(guān)于這一點,,參考老馬的證明,這一點很巧妙,,可以省不少事情),。所以和s為{11,17,,23,,27,29,,35,,37,41}之一,,設(shè)這個集合為A,。
1).假設(shè)和是11。11=2+9=3+8=4+7=5+6,如果P拿到18,,18=3×6=2×9,,只有2+9落在集合A中,所以P可以說出P1,,但是這時候S能不能說出S2呢,?我們來看,如果P拿到24,,24=6×4=3×8=2×12,,P同樣可以說P1,因為至少有兩種情況P都可以說出P1,,所以A就無法斷言S2,,所以和不是11。
2).假設(shè)和是17,。17=2+15=3+14=4+13=5+12=6+11=7+10=8+9,,很明顯,由于P拿到4×13可以斷言P1,,而其他情況,,P都無法斷言P1,所以和是17,。
3).假設(shè)和是23,。23=2+21=3+20=4+19=5+18=6+17=7+16=8+15=9+14=10+13=11+12,咱們先考慮含有2的n次冪或者含有大質(zhì)數(shù)的那些組,,如果P拿到4×19或7×16都可以斷言P1,,所以和不是23。
4).假設(shè)和是27,。如果P拿到8×19或4×23都可以斷言P1,,所以和不是27。
5).假設(shè)和是29,。如果P拿到13×16或7×22都可以斷言P1,,所以和不是29。
6).假設(shè)和是35,。如果P拿到16×19或4×31都可以斷言P1,,所以和不是35。
7).假設(shè)和是37,。如果P拿到8×29或11×26都可以斷言P1,,所以和不是37。
8).假設(shè)和是41,。如果B拿到4×37或8×33,,都可以斷言P1,所以和不是41。
綜上所述:這兩個數(shù)是4和13,。
解題思路3:
孫龐猜數(shù)的手算推理解法
1)按照龐的第一句話的后半部分,,我們肯定龐知道的和S肯定不會大于54。
因為如果和54恰好是53和a,,那么孫知道的積M就是M=53*a,,于是孫知道,這原來兩個數(shù)中至少有
一個含有53這個因子,,因為53是個素數(shù),。可是小于100,,又有53這個因子的,,只能是
53本身,所以孫就可以只憑這個積53*a推斷出這兩個數(shù)術(shù)53和a,。所以如果龐知道的
S大于54的話,,他就不敢排除兩個數(shù)是53和a這種可能,也就不敢貿(mào)然說“但是我肯定
你也不知道這兩個數(shù)是什么”這種話,。
如果53+99
如果S=98+99,那么龐可以立刻判斷出,,這兩個數(shù)只能是98和99,,而且M只能是98*99,
孫也可以知道這兩個術(shù),,所以顯然不可能,。
2)按照龐的第一句話的后半部分,我們還可以肯定龐知道的和S不可以表示為兩個素數(shù)的和,。
否則的話,,如果鬼谷子選的兩個數(shù)字恰好就是這兩個素數(shù),那么孫知道積M后,,就可以得到唯一的素因子分解,,判斷出結(jié)果。于是龐還是不敢說“但是我肯定你也不知道這兩個數(shù)是什么”這種話,。
根據(jù)哥德巴赫猜想,,任何大于4的偶數(shù)都可以表示為兩個素數(shù)之和,對54以下的偶數(shù),,猜想肯定被驗證過,,所以S一定不能是偶數(shù)。
另外型為S=2+p的奇數(shù),,其中p是奇素數(shù)的那些S也同樣要排除掉,。
還有S=51也要排除掉,因為51=17+2*17。如果鬼谷子選的是(17,2*17),,那么孫知道
的將是M=2*17*17,,他對鬼谷子原來的兩數(shù)的猜想只能是(17,2*17)。(為什么51要單獨拿出來,,要看下面的推理)
3)于是我們得到S必須在以下數(shù)中:
11172327293537414753
另外一方面,,只要龐的S在上面這些數(shù)中,他就可以說“但是我肯定你也不知道這兩個
數(shù)是什么”,,因為這些數(shù)無論怎么拆成兩數(shù)和,,都至少有一個數(shù)是合數(shù)(必是一偶一
奇,如果偶的那個大于2,,它就是合數(shù),,如果偶的那個等于2,我們上面的步驟已經(jīng)保
證奇的那個是合數(shù)),,也就是S只能拆成
a)S=2+a*b或b)S=a+2^n*b
這兩個樣子,,其中a和b都是奇數(shù),n>=1,。
那么(下面我說的“至少兩組數(shù)”中的兩組數(shù)都不相同,,而且的確存在(也就是那些
數(shù)都小于100)的理由我就不寫了,根據(jù)條件很顯然)
a)或者孫的M=2*a*b,,孫就會在(2*a,b)和(2,a*b)至少兩組數(shù)里拿不定主意(a和
b都是奇數(shù),,所以這兩組數(shù)一定不同);
b)或者M=2^n*a*b,,
如果n>1,,那么孫就會在(2^(n1)*a,2*b)和(2^n*a,b)至少兩組數(shù)里拿不定主意;
如果n=1,,而且a不等于b,,那么孫就會在(2*a,b)和(2b,a)至少兩組數(shù)里拿不定主
意;
如果n=1,,而且a等于b,,這意味著S=a+2*a=3a,所以S一定是3的倍數(shù),,我們只要
討論S=27就可以了,。27如果被拆成了S=9+18,那么孫拿到的M=9*18,,他就會在
(9,,18)和(27,6)至少兩組數(shù)里拿不定主意。
?。ㄉ厦鎸?1的討論就是從這最后一種情況的討論發(fā)現(xiàn)的,,我不知道上面的論證是否
過分煩瑣了,,但是看看51這個“特例”,我懷疑嚴(yán)格的論證可能就得這么煩)
現(xiàn)在我們知道,,當(dāng)且僅當(dāng)龐得到的和數(shù)S在
C={11,17,23,27,29,35,37,41,47,53}
中,,他才會說出“我雖然不能確定這兩個數(shù)是什么,但是我肯定你也不知道這兩個數(shù)
是什么”這句話
孫臏可以和我們得到同樣的結(jié)論,,他還比我們多知道那個M,。
4)孫的話“我現(xiàn)在能夠確定這兩個數(shù)字了”表明,他把M分解成素因子后,,然后組合成
關(guān)于鬼谷子的那兩個數(shù)的若干個猜想中,,有且僅有一個猜想的和在C中。否則的話,,他
還是會在多個猜想之間拿不定主意,。
龐涓聽了孫的話也可以得到和我們一樣的結(jié)論,他還比我們多知道那個S,。
5)龐的話“我現(xiàn)在也知道這兩個數(shù)字是什么了”表明,,他把S拆成兩數(shù)和后,也得到了
關(guān)于鬼谷子的那兩個數(shù)的若干個猜想,,但是在所有這些拆法中,,只有一種滿足4)里的
條件,否則他不會知道究竟是哪種情況,,使得孫臏推斷出那兩個數(shù)來,。
于是我們可以排除掉C中那些可以用兩種方法表示為S=2^n+p的S,其中n>1,,p為素數(shù)。
因為如果S=2^n1+p1=2^n2+p2,,無論是(2^n1,p1)還是(2^n2,p2)這兩種情況,,孫臏都
可以由M=2^n1*p1或M=2^n2*p2來斷定出正確的結(jié)果,因為由M得到的各種兩數(shù)組合,,
只有(2^n,p)這樣的組合,,兩數(shù)和才是奇數(shù),從而在C中,,于是孫臏就可以宣布自己知道
了是怎么回事,,可龐涓卻還得為(2^n1,p1)還是(2^n2,p2)這兩種情況犯愁。
因為11=4+7=8+3,,23=4+19=16+7,,27=4+23=16+11,35=4+31=16+19,,37=8+29=32+5,,
47=4+43=16+31,。于是S的可能值只能在
17294153
中。讓我們繼續(xù)縮小這個表,。
29不可能,,因為29=2+27=4+25。無論是(2,27)和(4,25),,孫臏都可以正確判斷出來:
a)如果是(2,27),,M=2*27=2*3*3*3,那么孫可以猜的組合是(2,27)(3,18)(6,9),,
后面兩種對應(yīng)的S為21和15,,都不在C中,故不可能,,于是只能是(2,27),。
b)如果是(4,25),M=4*25=2*2*5*5,,那么孫可以猜的組合是(2,50)(4,25)(5,20)
(10,10),。只有(4,25)的S才在C中。
可是龐涓卻要為孫臏的M到底是2*27還是4*25苦惱,。
41不可能,,因為41=4+37=10+31。后面推理略,。
53不可能,,因為53=6+47=16+37。后面推理略,。
研究一下17,。這下我們得考慮所有17的兩數(shù)和拆法:
(2,15):那么M=2*15=2*3*5=6*5,而6+5=11也在C中,,所以一定不是這個M,,否則4)
的條件不能滿足,孫“我現(xiàn)在能夠確定這兩個數(shù)字了”的話說不出來,。
(3,14):那么M=3*14=2*3*7=2*21,,而2+21=23也在C中。后面推理略,。
(4,13):那么M=4*13=2*2*13,。那么孫可以猜的組合是(2,26)(4,13),只有(4,13)
的和在C中,,所以這種情況孫臏可以說4)中的話,。
(5,12):那么M=5*12=2*2*3*5=3*20,而3+20=23也在C中,。后面推理略,。
(6,11):那么M=6*11=2*3*11=2*33,,而2+33=35也在C中。后面推理略,。
(7,10):那么M=7*10=2*5*7=2*35,,而2+35=37也在C中。后面推理略,。
(8,9):那么M=8*9=2*2*2*3*3=3*24,,而3+24=27也在C中,。后面推理略,。
于是在S=17時,,只有(4,13)這種情況,孫臏才可以猜出那兩數(shù)是什么,,既然如此,,龐涓就知道這兩個數(shù)是什么,說出“我現(xiàn)在也知道這兩個數(shù)字是什么了”,。聽了龐涓的話,,于是我們也知道,這兩數(shù)該是(4,13),。