全球专业中文经管百科,由121,994位网友共同编写而成,共计436,011个条目

鴿巢原理

用手机看条目

出自 MBA智库百科(https://wiki.mbalib.com/)

鴿巢原理(Pigeonhole Principle)

目錄

什麼是鴿巢原理

  鴿巢原理又名抽屜原理狄利克雷原理,它由德國數學家狄利克雷(Divichlet,1805—1855)首先發現。鴿巢原理在組合學中占據著非常重要的地位,它常被用來證明一些關於存在性的數學問題,並且在數論和密碼學中也有著廣泛的應用。使用鴿巢原理解題的關鍵是巧妙構造鴿巢或抽屜,即如何找出合乎問題條件的分類原則。[1]

鴿巢原理的形式[1]

  鴿巢原理的簡單形式:如果n+1個物體被放進n個盒子,那麼至少有一個盒子包含兩個或者更多的物體。

  證明:如果這n個盒子中的每一個都至多含有一個物體,那麼物體的總數最多是n。既然我們有n+1個物體,於是某個盒子就必然包含至少兩個物體。

  鴿巢原理的加強形式:令Q1Q2,……,Qn為正整數,如果將Q1+Q2+…+Qn-n+1個物體放入n個盒子內,那麼,或者第一個盒子至少含有Q1個物體,或者第二個盒子至少含有Q2個物體,……,或者第n個盒子至少含有Qn個物體。

  證明:設將Q1+Q2+…+Qn-n+1個物體分放到n個盒子中,如果對於每個i=1,2,…,n,第i個盒子含有少於Qi個物體,那麼所有盒子中的物體總數不超過(Q1-1)+(Q2-1)+…+(Qn-1)=Q1+Q2+…+Qn-n,該數比所分發的物體總數少1,所以我們斷定,對於某一個i=1,2,…,n,第i個盒子至少包含Qi個物體。

  由上面的原理可得如下推論:推論1:m雙鞋放入n個鞋盒中,則至少有一個盒子中有不少於[\frac{m-1}{n}]雙鞋。

  推論2:n(m-1)+1只鴿子放入n個鴿籠,則至少有一個鴿籠中有m只鴿子。

  推論3:設m1m2,…,mn均為正整數,且滿足\frac{m_1+m_2+...+m_n}{n}>r-1,則m1m2,…,mn申至少有一個數不小於r。

鴿巢原理的應用[1]

  1.用於幾何圖形

  (1)在邊長為1的等邊三角形內任意選擇5個點,存在2個點,其間距離至多為1/2。

  證明:由題意,可以構造出4個抽屜,每個抽屜滿足在其問的距離至多為1/2(見圖1)。根據鴿巢原理,在4個抽屜里分別放置4個點,不論第5個點如何放置,都滿足兩點之間的距離最多為1/2。

Image:鸽巢原理图1.jpg

  (2)證明在邊長為1的等邊三角形內任意選擇10個點,存在兩個點,其間距離至多為1/3。

  證明:按照圖2的構造可以證明該題。

Image:鸽巢原理图2.jpg

  歸納:在邊長為1的等邊三角形內任意選擇n2+1個點,存在2個點,其間距離為。

  (3)在單位正方形內任意給定51個點,求證至少有三個點落在一個半徑為1/7的圓內。

  證明:將單位正方形的各邊五等分,以此把它分成25個邊長為l/5的小正方形,作為25個抽屜。根據抽屜原理可知,其中至少有一個小正方形中含有[\frac{51-1}{25}]+1=3個點,而這樣的小正方形外接圓半徑是\frac{\sqrt{2}}{10}。又由({\frac{\sqrt{2}}{10}})^2\frac{1}{50}<\frac{1}{49}=({\frac{1}{7}})^2\sqrt{2}/10<1/7,所以至少有三個點在半徑為1/7的一個圓內。

  (4)在直徑為5的圓內任意給定10個點,證明存在兩個點,它們之間的距離小於2。

  證明:根據題意,我們最先考慮到把圓等分成9個扇形而構造出9個抽屜,但是雖然必有兩個點在某一扇形內,但不能確認它們之間的距離小於2。於是我們考慮先用一個與已知圓同心,半徑為1的不包含邊界的小圓作為一個抽屜,然後再把圓環部分等分成八個部分,(如圖3所示)這樣就構成了9個抽屜。

Image:鸽巢原理图3.jpg

  根據抽屜原理可知,存在兩個點在同一個抽屜(包括邊界)中,若這兩個點在小圓(不包含邊界)中,顯然它們之間的距離小於2。若這兩個點在圓環部分的八個等分中的某一圖形里,不妨設在圖形ABCD中。由於

Image:鸽巢原理图4.jpg

  由此可知,這時兩個點之間的距離也小於2,從而命題得證。

  2.用於數的整除關係

  (1)在前12個自然數中任取7個數,一定存在兩個數,其中的一個數是另一個數的整數倍。

  分析:若能把前12個自然數劃分成6個集合,即構成6個抽屜,使每個抽屜內的數或只有一個,或有任意的兩個數,其中的一個是另一個的整數倍,這樣就可以由抽屜原理推出結論。那麼如何對這12個自然數進行分組?我們知道,一個自然數,它要麼是奇數,要麼是偶數。若是偶數,我們總能把它表達為奇數與2k(K=1,2,3,…)的乘積的形式。這樣,如果允許上述乘積中的因數2k指數K可以等於零,則每一個自然數都可表達成“奇數×2k(K=0,1,2,…)的形式,於是,把這12個自然數用上述表達式進行表達,並把式中“奇數”部分相同的自然數作為一組,構成一個抽屜。

  證明:把前12個自然數劃分為如下六個抽屜:

  A1={l·20,l·21,l·22,1·23}

  A2={3·20,3·21,3·22}

  A3={5·20,5·21}

  A4={7·20}

  A5={9·20}

  A6={11·20}

  顯然,上述六個抽屜內的任意兩個抽屜無公共元素,且A1+A2+A3+A4+A5+A6={1,2,3,…,12}。由鴿巢原理,對於前12個自然數不論以何種方式從其中取出7個數,必定存在兩個數同在A1A2A3抽屜里,那麼這兩個數之間存在倍數關係。即一個數是另一個數的整數倍。

  歸納:從1到2n的正整數中任取n+1個數,則這n+1個數中至少有兩個數,其中一個數是另一個數的倍數。

  證明:設這n+1個數為ala2,…,anan + 1,我們對其中的每一個數都進行如下的處理:去掉一切2的因數,直到剩下奇數為止。例如,20=22×5,去掉2留下奇數5,結果可得到n+1個奇數r1r2,…,rnrn + l。顯然1≤r1r2,…,rnrn + l<2n,而1到2n中只有n個奇數,由抽屜原理知,上面n+1個奇數中至少有兩個數是相同的,設這兩個數為ri=rj(i≠j),它們分別代表的整數為2^{k_1}×ri2^{k_2}×rj,不論它們誰大誰小,2^{k_1}2^{k_2}也之間總存在倍數關係,即一個數是另一個數的整數倍。

  (2)證明任意五個整數中,必有三個整數的和是3的倍數。

  證明:任一整數被3除餘數只可能是0,l,2。

  若給定的五個整數被3除所得的餘數中0,l,2都出現,那麼餘數分別為O,l,2的三個數的和一定能被3整除,如果餘數中至多只出現0,l,2中的兩個,那麼由抽屜原理,其中必有一個餘數至少出現三次。而這餘數相同的三個數的和一定能被3整除。

  (3)證明對任意給定的52個整數,存在其中的兩個整數,要麼兩者的和能被100整除,要麼兩者的差能被100整除。

  證明:任意一個整數a除以100產生的餘數不外乎為O,1,2,…,99。題目中的52個整數ai除以100則產生52個餘數ri(i=1,2,…,52)。

  如果這52個餘數中有兩個餘數相等,即ri=rj(i≠j),那麼一定有ai-aj能被100整除。即存在兩個數,它們的差能被100整除。

  如果這52個餘數均不相等,我們現在對0,1,2,…,99這100個數來構造抽屜,將相加之和為100的兩個數放在同一個抽屜里。

  構造出來的51個抽屜如下:{1,99},{2,98},{3,97},...,{49,51},{0},{50}由於有52個不同的餘數,根據鴿巢原理,必有兩個餘數來自同一個抽屜,這隻能從前49個抽屜中取出。而不論從哪個抽屜取出,同一個抽屜里的兩個餘數之和為100,那麼一定有產生這兩個餘數的兩個整數之和能被100整除。

  (4)證明對任意n+1個整數a1a2,…,an + 1,存在兩個整數aiaj(i≠j),使得ai-aj能夠被n整除。

  證明:一個整數除以n的餘數不外乎為0,1,2,…,n-1。n+1個整數a1a2,…,an + 1除以n則產生n+1個餘數,由於一個整數除以n最多只能產生n個不同的餘數(即n個抽屜),故根據鴿巢原理,這n+1個餘數中,一定有兩個相等。那麼,產生相等餘數的兩個整數相減,其差一定能被n整除。

  3.應用於“連續時間”問題

  (1)某廠在五年期問的每一個月里至少試製一種新產品,每年最多試製19種新產品。試證明:一定存在連續的幾個月,恰好試製24種新產品。

  證明:設五年期間該廠各個月試製的新產品個數分別為a1a2,…,a59a60,按題意,構造出數列an的前n項和的數列s1s2,…s59s60,則有:1≤a1=s1<s2<…<s59<s60≤19×5=95,而序列s1+24,s2+24,…,s59+24,s60+24也是一個嚴格遞增序列:25≤s1+24<s2+24<…<s59+24<s_{60}+24≤95+24=119於是,這120個自然數s1s2,…s59s60s1+24,s2+24,…,s59+24,s60+24都在區間[1,119]內。在[1,119]內,只有119個自然數,根據抽屜原理,必定存在兩個數相等。

  上述兩個數列又分別是嚴格單調的,因此必然存在一個i和j,使得si=sj+24。從而,該廠在從第j+1個月起到第i個月的這幾個月時間里,恰好試製了24種新產品。

  (2)一個孩子每天至少看一個小時電視,總共看7周,但是每周看電視從不超過11小時。證明,存在連續若幹天在此期間這個孩子恰好看電視20個小時。(假設這個孩子每天看電視時間為整數個小時)證明:設這個孩子7周內每天看電視的時間分別為a1a2,…,a49,現在構造出數列{an}的前n項和的數列s1s2,…s_{49},則有:1≤a1=s1<s2<…<s49≤11×7=77,而序列s1+20,s2+20,…,s49+20也是一個嚴格遞增序列:21≤s_1+20<s_2+20<…<s_{49}+20≤77+20=97於是,這98個自然數s1s2,…s49sl+20,s2+20,…,s49+20都在區間[1,97]內。而在[1,97]內,只有97個自然數,根據抽屜原理,必定存在兩個數相等。而上述兩個數列又分別是嚴格單調的,因此必然存在一個i和j,使得si=sj+20。從而,這個孩子在第j+1天起到第i天的時間里,恰好看電視20個小時。

  總結:凡遇此類問題都可按照上述方法進行證明。從上面兩題的題目我們可以看出,問題中需要證明的數字(如上面的24和20)加上“在給定時間內能完成任務的最大數字”(如上面的95和77)恰好比“給定時間”的2倍少l。(如:(24+95)+1=60×2,(20+77)+1=49×2)。

  這是該類問題最重要的特征,因為前兩個數字之和恰好可以看成是抽屜數,而“給定時間”×2可以看成是要被放人抽屜的元素數,抽屜數剛好比元素數少1,則有兩個元素一定會放人同一個抽屜,通過鴿巢原理從而完成對問題的證明。這也是解決此類問題的關鍵所在。

  4.用於“人的相識”問題

  (1)證明任意六個人中至少存在三個人或是互相認識,或是互相不認識。

  證明:在這六個人中任意取定一個人P,則其餘五個人可分為兩類:A={與P認識的人},B={與P不認識的人}。根據抽屜原理,A和B中至少有一個集合有3個人,不妨設此集合為A,且對於集合A中的3個人a,b,c來說,若他們彼此不認識,則問題得證。否則若a,b,c中有兩個人互相認識,不妨假設這兩個人是a和b,則P,a,b三個人互相認識。

  若集合B中至少有三個人,用類似的方法也可得到證明。

  (2)證明在一群n>1個人中,存在兩個人,他們在這群人中有相同個數的熟人。(某人與自己不能算是熟人)證明:在n個人中,每個人所認識的人數只能是0,1,2,…,n-1。

  如果已知有兩個人認識的人數相等,那麼問題得證。

  由於某人認識0個人的情況和另一人認識n一1個人的情況不可能同時發生,那麼這n個人所能認識的人數0,1,2,…,n-1也不可能同時存在,即最多只能存在n-1種情況,我們把它看成n-1個抽屜,根據鴿巢原理,n個元素放進n-1個抽屜,則一定有兩個元素在同一個抽屜內,即有兩個人所認識的人數相等。

  (3)在一個100人的聚會中,每個人都有偶數個(有可能是0個)熟人,證明,在這次聚會上存在3個人有相同個數的熟人。

  證明:根據題意,每個人所能認識的人數可能為:O,2,4,…,96,98。

  在這個100人的聚會中,若這50種情況0,2,4,...,96,98都出現,我們假設第1個人認識。個人,第2個人認識2個人,第3個人認識4個人,……,依此類推,第50個人認識98個人,那麼,在餘下的50個人中,如果已知有兩個人有相同個數的熟人,那麼可以得到有3個人認識相同個數的人,問題得證。如果不知道是否還有兩個人有相同、個數的熟人,我們來做下麵的假設:剩下的50個人也是依次認識0,2,4,……,98個人,那麼我們無法證出結論。現在我們來分析假設是否成立。根據以上推導和假設,我們可以得到有兩個人認識0個人,有兩個人認識98個人,對於這兩個認識O個人的人來說,他們自然也不認識那兩個認識98個人的人,而對於那兩個認識98個人的人來說,只能有一個人他們不認識,這就與有兩個人都不認識他們矛盾,所以不可能出現兩個認識0個人的人和兩個認識98個人的人同時存在的情況,故假設不成立。

  所以剩下的50個人中,最多只能出現認識O,2,4,……,98個人這50種情況的49種,根據鴿巢原理,必然有一種情況要重覆。所以一共存在3個人有相同個數的熟人。

  若在這l00個人的聚會中,只出現49種或更少的情況,那麼根據鴿巢原理同樣可以得到一定有3個人有相同個數的熟人。

參考文獻

  1. 1.0 1.1 1.2 何春,萬琳,任雅莉.鴿巢原理及其應用.電腦與數字工程2007年8期
本條目對我有幫助82
MBA智库APP

扫一扫,下载MBA智库APP

分享到:
  如果您認為本條目還有待完善,需要補充新內容或修改錯誤內容,請編輯條目投訴舉報

本条目由以下用户参与贡献

会飞的鲭鱼,鲈鱼,Yixi.

評論(共2條)

提示:評論內容為網友針對條目"鴿巢原理"展開的討論,與本站觀點立場無關。
GX (討論 | 貢獻) 在 2011年5月22日 16:34 發表

可惜我高數沒學好~~~阿門

回複評論
M id 77c07066653a0ead94d9433d69f7581f (討論 | 貢獻) 在 2022年3月30日 11:50 發表

自然數不是從0開始嗎

回複評論

發表評論請文明上網,理性發言並遵守有關規定。

打开APP

以上内容根据网友推荐自动排序生成

下载APP

闽公网安备 35020302032707号