算法思維精選習(xí)題

我先給大家講一個故事:

一位法國數(shù)學(xué)家曾編寫過一個印度的古老傳說:在世界中心貝拿勒斯(在印度北部)的圣廟里,一塊黃銅板上插著三根寶石針。印度教的主神梵天在創(chuàng)造世界的時候,在其中一根針上從下到上地穿好了由大到小的64片金片,這就是所謂的漢諾塔。不論白天黑夜,總有一個僧侶在按照下面的法則移動這些金片:一次只移動一片,不管在哪根針上,小片必須在大片上面。僧侶們預(yù)言,當(dāng)所有的金片都從梵天穿好的那根針上移到另外一根針上時,世界就將在一聲霹靂中消滅,而梵塔、廟宇和眾生也都將同歸于盡。

問題一可以簡單描述為:

如果把64個金片由一根針上移動到另一根針上,并且始終保持下小上大的順序,要多少次移動?先看演示圖:

先假設(shè)金片數(shù)為N,移動次數(shù)為M。

N=1,M=1

N=2,M=3,

N=3,M=7

...................

N=64,M=2^64-1 ?這是一個很大的數(shù)字了。

假如每秒鐘一次,共需多長時間呢?一個平年365天有 31536000 秒,閏年366天有31622400秒,平均每年31556952秒,計算一下,

18446744073709551615/31556952=584554049253.855年

這表明移完這些金片需要5845億年以上。

我的天哪!?。。。?!



? ? ? ?梅森素數(shù),(MersennePrimes)是17世紀(jì)法國數(shù)學(xué)家、法蘭西科學(xué)院奠基人馬林?梅森所發(fā)現(xiàn)的。

? ? ? ?梅森素數(shù)指形如2^p-1的正整數(shù),其中指數(shù)p是素數(shù),常記為Mp。若Mp是素數(shù),則稱為梅森素數(shù)。

p=2,3,5,7時,Mp都是素數(shù),但M11=2047=23×89不是素數(shù),是否有無窮多個梅森素數(shù)是數(shù)論中未解決的難題之一。

截至2016年1月累計發(fā)現(xiàn)49個梅森素數(shù),最大的是p=2^74207281-1(被稱為M74207281),此時 Mp 是一個22338618位數(shù)。

四色定理簡潔證明及其漏洞

四色定理:任何一張正規(guī)地圖,只用四種顏色就能夠使得有相同邊境的國家著上上不同的顏色。

證明如下:

假設(shè)存在一個數(shù)目N,國家數(shù)目達到N時,就可以構(gòu)造一個地圖――它必須用五種顏色著色(四色不夠)。這也就是假設(shè)去掉其中任何一個國家,數(shù)目成為N-1時,它應(yīng)當(dāng)可以用四種顏色著色。

現(xiàn)在我們用反證法證明。

假設(shè)我們能夠證明:如果N-1個國家的地圖能用四色著色,把去掉的一個加上去也能,那么我們就證明了不存在這樣一個N,也就證明了四色定理。

根據(jù)歐拉定理,任何一個地圖,必然存在一國(稱之為X國),其相鄰國家數(shù)目不大于5。或者說,其鄰國可能是1個,2個,3個,4個,或5個。

(歐拉定理請自行百度)

這樣,我們就從有個N國家的地圖中拿掉X這一國家,這時它應(yīng)當(dāng)可以用四色著色?,F(xiàn)在,如果我們能證明,把X國放回到著好四色的N-1國地圖中,通過系統(tǒng)顏色變換,也能用四色著色,這樣就證明了四色定理。

假如X國鄰國只有1,2,3國,這是簡單的,著第四種顏色就是?,F(xiàn)在考慮四鄰國和5鄰國。

前人已經(jīng)通過2色通道的概念,證明四鄰國可以為X國著色而不增加顏色數(shù)目。參看圖1(其中R,G,B,Y分別表示紅,綠,藍,黃四色)



圖1四鄰國問題



一個二色通道是由交替著上兩種不同顏色的國家連成的。上面兩個通道BY通道和RG通道總有一個是不通的。假設(shè)RG通道不通,則把和R國以及與之相連的RG通道1上的國家的顏色R和G互換,再把X國著上R就行了.

著好色的地圖如圖二。

圖2.四鄰國問題解決


剩下的硬骨頭是5鄰國問題。我們假設(shè)最壞的情況――X鄰國已經(jīng)有四種顏色?,F(xiàn)在我們可以畫圖三所示四個通道。

圖3五鄰國問題



1)BY通道是通的,RG通道必然不通,這好解決――改變與G國相連的RG通道顏色,再把X著色成G就行。

2)BG通道是通的,RY通道必然不通,這也好解決――改變與Y國相連的RY通道顏色,再把X著色成Y就行。

3)BY通道和BG通道都不通,則RG通道和RY通道必然是通的。即如果下面兩個通道不通,則上面兩個通道必然是通的。這時,我們把和左B相連的BY通道(a)顏色對調(diào),和右B相連的BG通道(b)顏色對調(diào),然后把X著成B就是。參看圖4。


圖4五鄰國問題解決


到此5鄰國問題圓滿解決,四色定理證明大功告成。


這是我20年前的證明。當(dāng)時我沒看到Kempe的具體證明,也不知道別人提出的反例究竟如何。我把它投寄給一位再報上介紹四色定理的數(shù)學(xué)學(xué)者,他也沒發(fā)現(xiàn)漏洞。后來倒是我自己發(fā)現(xiàn)了漏洞――圖3中如果上面兩條通道交叉,證明就會失敗。參看圖5。

圖5上兩個通道交叉導(dǎo)致證明失敗的反例


具體圖例:

圖6反例


我把這個看似簡潔正確方法公布出來,或許可以讓后來者少走彎路。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容