柴棍拚成的 5008 四個數字,只移動兩根火柴,能組成的最大數字是多少?
小時候最喜歡玩火柴,尿了多少次炕也不知悔改。今天看到同事在群里拋出這個火柴的問題,勾引起了小時的智慧和對火柴的熱愛,饒有興緻觀察起來這個題目。
由火柴棍拼成的 5008 四個數字,只移動兩根火柴,能組成的最大數字是多少?
限制只移動兩根火柴,非常簡單的規則,但卻足以創造無限的可能。
* 劇透警告:為了保證您完整的愉悅的思考體驗,建議先停留在此頁面,思考出答案以後再向下翻閱。
如圖看到,想要這個數字最大的話,非常簡單的思路,那就是把首位數變成最大,我們看到首位數是 5,再加一根的話就能變成9。末位最不重要,就從末位數拆掉一根。從末位拿去一根就變成了 9009。再看第二位數,0 很簡單就可以變成9,非常簡單的兩回合下來,最大數產生:9909。
答案不會這麼簡單,再來看題,肯定還能找到更大的數字,4 位數里這是最大的,接下來找找是否有辦法組成 5 位數。把最後的 8 拆成5,多出兩根就可以組成 1,放到最前面,這可是 15005,哦不對,放在後面會更大一些:50051。
有點意思了,這個數字也不小了,再瞅瞅興許還有更大的可能。動動腦子的話,會發現把中間的 0 上下兩根都拿去,可以拆成 11和另外兩根火柴棍。那就好辦了,511081,這個數字是最大的了吧。
當然不是,還可以塞中間嘛,511108會更大一些呢。
這可是50多萬,朋友們,50多萬啊,那可是將近一個億啊。
事到如今,應該是最大的數字了吧。看到旁邊的大白玩偶(●—●)這樣盯著我,想到《超能陸戰隊》電影中它的創造者 Tadashi總是教導他弟弟 Hiro 要換一種角度思考。這時候靈光一現快倒立起來看,5008 變成了8005,那麼拆成最大是數字將是:811105。
這時候興趣越來越大,再換一種角度去思考,會不會還有別的可能呢。或許有辦法湊出平方數來,才能出現更大的數字。拆出來 81105和另外兩根火柴,完全可以組成 81105 的 11 次方,剛剛好兩根火柴比較短,悄悄的把兩根火柴放在 81105 的枕邊。
這個數字有多大呢,計算器告訴我們:998904374284506726271247033944033868193660176806640625。
好吧,億級別的數字都完全不放在眼裡了。
按說到此呢,這個數字應該是最大的了,打完收工?那可不行。瞪目怒視大腦飛速旋轉,果然又有新的發現,在只移動兩根火柴前提下,還可以組合成5E88。
只要是上過學的朋友們應該都認識它,這叫做科學計數法,代表 5 乘以 10 的 88 次方,也就是說是一個 5 後面跟著 88個零。寫出來就是50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000。
那 81105 的 11 次方和它比較哪個更大呢?數一下位數就知道了,快來快來數一數。前者是 54 位,後者是 89位,這樣決勝者就出現了,89 位數更大:5E88。
再來看看倒過來組合,無論怎麼折騰最大的數字也只是 8E85,都沒有 5E88 大。剛要轉回去的時候又看到了新東西,還可以組合成8e95,雖然這個 e 長的丑了點,但也能勉強認出來。新的冠軍出現:8e95。
那再正過來看看呢,果然還有更大的數:5e98。這就告訴我們了一個道理,一個問題反覆兩面看,總會有新的答案。
居然還可以出現字母,這時候就有點耍賴了,前面那位 81105 的 11次方的朋友不服,你如果這樣的話,那就別怪我不客氣了,81105 拆出來的11,不要放在我腦袋上,放在我左腳邊,我要成為冪級數,我可是要成為冪級數的男人。來組成 11 的 81105 次方。
這應該是終極答案了吧,並且還是在耍賴的情況下,按照正常書寫規範應該 81105作為角標字型大小要小一些才可以。但不管怎樣,也是一個非常優秀的答案,並且非常大。具體是多大呢,作為一個死理性派還是一定要算一下的。這時候計算器已經不夠用了,從褲襠里掏出Python 來:
>>>
print 11 ** 81105
得出的結果,我已經無法複製到文章中來了,貼在 Word 里就佔了 42 頁,換成字元串統計了一下長度,足足有 84463 位。8萬多位,光寫出來就是 8 萬多字,都夠短篇小說的篇幅了,要是按一千字 80塊錢的稿費來算,那錢豈不是來的太容易了……(遐想中……)
事已至此還能有更大的數字答案嗎?
看我的嘴型:有!
這個題目選來用火柴拼而不是牙籤,恰好給了我們可乘之機。我們在中學里不但學過科學計數,還學過一種叫做階乘的東西。也許有朋友可能畢業后立馬就把知識還給老師了,容我來簡單強行科普一下。階乘的表達式就是數字後面緊跟一個「!」。舉個例子來說:「4!」就代表4 的階乘,而它的值是 24。
4!
= 4 × 3 × 2 × 1 = 24
這個火柴棍倒著放,完全可以看成是一個嘆號嘛。你要非跟我較真說火柴看上去一點都不像嘆號,那我只能告訴你,抱歉,我眼神可能不大好,我偏要看成嘆號。
這時候一個眼神不大好偏還不戴眼鏡的機智的少年來回答這個問題,最大的數字恐怕將是「91108!」了。
這個數字到底有多大呢,死理性派的程序員來幫你算:
>>>
print reduce(lambda x, y: x*y, range(1, 91109))
結果有多恐怖呢?複製到微信消息窗口中的時候,直接把微信程序搞到無響應了。粘在 Word 里,用同樣的 12號字體,單倍行距,足足佔了 202 頁。412291 個字,那是 40 多萬位數呀,一篇頂過去五篇,一口氣上五樓。
這時候也許會有朋友會大聲疾呼說不對,更大的數字應該是「81105!!」,一個數階乘的階乘,那豈不是更大?
但是在數學領域裡,兩個嘆號連一起是有名詞解釋的,這叫做「雙階乘」,來看維基百科里的解釋。
簡單的舉例
9 的雙階乘:9!!
= 9 × 7 × 5 × 3 × 1 = 945而
9 的階乘是:9!
= 9 × 8 × 7 × 6 × 5 × 4 × 3 × 2 × 1 = 362880
很明顯「9!」更大,而雙階乘更小。
所以最終冠軍就是 91108!。
都到這種程度了,那弱弱的問一句,還有更大的數嗎?只能非常無奈的回答,也許還是有的。因為這是火柴,有可能在移動火柴的時候用的力氣太大了,不小心把火柴給弄折了,變成了成「^」,而恰好這個符號代表次方,就可以組成8^8115,就是 8 的 8115次方。雖然在上述答案列表中,這個數字的大小根本排不上號,但是它提供了一種思路——火柴是可以撅的。
有的朋友力氣更大,在移動火柴時候一不小心把火柴撅斷了怎麼辦,如果沒人要你賠償的話,那是非常好的一件事,一根變兩根,兩根變四根。前面是11 的 81105 次方,這下可以出現 11 的(11 的 81105次方)的次方。那就沒完了,如果你的火柴夠長夠堅挺,那從理論上來說可以撅成無限根,那這裡可以組成的數也將是無限大了……