讀古今文學網 > 12堂魔力數學課 > 第4章 好吃又好玩的排列組合 >

第4章 好吃又好玩的排列組合

數學中的感歎號

在本書開頭,我們討論了從1到100的數字求和問題,最後得出的答案是5 050,並推導出前n個數字的簡便求和公式。現在,假設我們希望算出從1到100的所有數字的乘積,該怎麼辦呢?這個數字非常大!如果你感興趣,我可以告訴你這個數字一共有158位:

93 326 215 443 944 152 681 699 238 856 266 700 490 715 968 264 381 621 468 592 963 895 217 599 993 229 915 608 941 463 976 156 518 286 253 697 920 827 223 758 251 185 210 916 864 000 000 000 000 000 000 000 000

本章將告訴大家,計數問題正是建立在這類數字的基礎之上。在這類數字的幫助下,我們可以判斷圖書(接近5億冊)在書架上有多少種排列方式,在撲克牌遊戲中拿到至少一對牌(運氣不錯)的概率是多少,彩票中獎的概率是多少(不會太大)。

我們把從1到n的所有數字的乘積記作n!,讀作「n的階乘」。

n! = n×(n – 1) ×(n – 2) ×…×3×2×1

例如:

5! = 5×4×3×2×1 = 120

我覺得用感歎號來表示階乘十分恰當,因為n! 的增長速度非常快,而且有許多激動人心或令人驚訝的應用。為方便起見,數學家規定0! = 1,當n為負數時,n! 沒有意義。

延伸閱讀

根據階乘的定義,很多人都以為0! 應該等於0。但是,我要告訴大家,0! = 1是有道理的。當 n ≥ 2時,n! = n×(n – 1)!,因此:

要使這個等式在 n = 1時也成立,就需要滿足:

從下面可以看出,階乘的增長速度非常快:

000! = 1

001! = 1

002! = 2

003! = 6

004! = 24

005! = 120

006! = 720

007! = 5 040

008! = 40 320

009! = 362 880

010! = 3 628 800

011! = 39 916 800

012! = 479 001 600

013! = 6 227 020 800

020! = 2.43×1018

052! = 8.07×1067

100! = 9.33×10157

這些數字到底有多大呢?據估計,全世界大約有1022顆沙礫,整個宇宙大約有1080個原子。一副撲克牌有52張(不含大小王),就有52! 種排列方式,因此你看到的那種排列可能前所未見。假設地球上的每個人每分鐘洗一次牌,那麼在接下來的100萬年裡,可能都無法再次看到之前的那種排列。

延伸閱讀

在本章開頭討論100! 時,大家可能注意到它的答案尾部有大量的0出現。這些0是從哪裡來的?在計算從1到100的數字乘積時,每次5的倍數與2的倍數相乘都會得到一個0。在1~100中,共有20個5的倍數和50個偶數,這似乎意味著得數的末尾應該有20個0。但是,25、50、75和100這4個數字分別多貢獻了一個0,因此100! 的末尾有24個0。

同第1章討論的數字一樣,階乘也會表現出很多美妙的規律。下面是我最喜愛的一個:

1×1! = 1 = 2!–1

1×1! + 2×2! = 5 = 3!–1

1×1! + 2×2! + 3×3! = 23 = 4!–1

1×1! + 2×2! + 3×3! + 4×4! = 119 = 5!–1

1×1! + 2×2! + 3×3! + 4×4! + 5×5! = 719 = 6!–1

階乘的一個美妙規律

加法法則和乘法法則

從本質上看,計數問題大多涉及兩個法則,即加法法則和乘法法則。在存在多種不同類型選擇的情況下,計算可選方案的總數,需要使用加法法則。例如,如果你有3件短袖襯衫和5件長袖襯衫,那麼在考慮穿哪件襯衫時,你一共有8種不同的選擇。一般而言,如果你的可選對像分為兩種,第一種對像包含a個選擇方案,第二種對像包含b個選擇方案,那麼你在這兩種對像中做出選擇時一共有a + b個方案(假設a、b兩種選擇方案各不相同)。

延伸閱讀

如前所述,加法法則假設這兩種對像彼此不同。但是,如果有c個對象同時屬於這兩個類型,這些對象就會被統計兩次。因此,不同對象的個數應該是 a + b – c。例如,在一個班級中,有12名學生養狗,19名學生養貓,還有7名學生既養狗又養貓,那麼養寵物的學生總數應該是12 + 19 – 7 = 24。再舉一個數學味兒更濃的例子。在從1到100的數字中,2的倍數有50個,3的倍數有33個,既是2又是3的倍數(即6的倍數)的數字有16個。那麼,在從1到100的數字中,是2或者3的倍數的數字一共有50 + 33 – 16 = 67個。

乘法法則的意思是:如果某項活動由兩個部分構成,完成第一部分的方法有a個,完成第二部分的方法有b個,那麼完成整個活動共有a×b個方法。例如,我有5條褲子和8件襯衫,而且我不關心顏色搭配(我想,學數學的人大多如此),那麼我一共有5×8 = 40個不同的搭配方案。如果我有10條領帶,那麼襯衫、褲子加領帶的搭配方案共有40×10 = 400個。

一副普通的撲克牌(不含大小王)有4個花色(黑桃、紅心、方塊和梅花)、13種牌值(A,2,3,4,5,6,7,8,9,10,J,Q和K),每張牌只能有一個花色和一種牌值。因此,一副牌(不含大小王)共有4×13 = 52張。我們也可以把全部的52張牌排列成一個4×13的長方形,如下圖所示,從中也可以看出一副牌共有52張。

接下來,我們用乘法法則計算郵政編碼的個數。從理論上講,一共可以有多少個五位數的郵政編碼呢?郵政編碼的每個數位上的數字可以從0至9中任選,因此最小的郵政編碼可能是00000,最大的可能是99999,共有100 000個。根據乘法法則,我們也可以得出這個結果。第一數位上的數字有10種選擇(0~9),第二、第三、第四和第五數位上的數字也各有10種選擇。因此,郵政編碼的個數是105 = 100 000。

在統計郵政編碼的個數時,數字是可以重複出現的。現在,我們來研究對像不能重複出現的情況,比如將對像排成一行。很容易看出,兩個對像有兩種排列方式。例如,字母A和B可以排列成AB和BA這兩種形式。3個對象有6種排列方式:ABC,ACB,BAC,BCA,CAB,CBA。假設有4個對象,在不把它們寫出來的情況下,你知道它們共有24種排列方式嗎?在安排第一個字母時,有4種選擇(A、B、C或者D)。第一個字母確定之後,安排第二個字母時有3種選擇,安排第三個字母時有2種選擇,安排最後一個字母時只有一種選擇。因此,一共有4×3×2×1 = 4! = 24種排列方式。一般而言,n個不同對像有 n!種排列方式。

在接下來的例子裡,我們結合使用加法法則和乘法法則。假設美國某個州發放兩種車牌。第一種車牌的前三位是字母,後三位是數字。第二種車牌的前兩位是字母,後4位是數字。最多可以發放多少個不同的車牌呢?(儘管某些字母與數字外形相似,例如O與0,但我們不考慮這種情況,允許使用所有26個英文字母和10個數字。)根據乘法法則,第一種車牌的可能數量為:

26×26×26×10×10×10 = 17 576 000

第二種車牌的可能數量為:

26×26×10×10×10×10 = 6 760 000

由於每個車牌要麼屬於第一種,要麼屬於第二種(不可能既屬於第一種又屬於第二種),根據加法法則,車牌的總數是:17 576 000 + 6 760 000=24 336 000。

計數問題(數學界把這個分支稱作組合數學)可以給我們帶來諸多樂趣,其中之一就是我們經常發現同一個問題有多種解法。(心算問題也可以讓我們體驗到這種樂趣。)前面那個例子其實只需一個步驟即可完成。可發放的車牌數是:

26×26×36×10×10×10 = 24 336 000

這是因為車牌的前兩位分別有26個選擇,後三位各有10個選擇,而第三位既可以選擇字母,又可以選擇數字,因此有26 + 10 = 36個選擇。

冰激凌、彩票與撲克牌遊戲

接下來,我們將利用剛剛學到的計數知識,計算我們中彩票大獎和玩撲克牌遊戲時拿到各種牌面的概率。但是,我先製作一些冰激凌,讓大家放鬆放鬆。

假設某家商店出售10種口味的冰激凌,可以搭配出多少種三球冰激凌呢?在做圓筒冰激凌時,各種口味的先後次序是需要考慮的(當然如此!)。如果各種口味都允許重複,那麼每個冰激凌都有10個選擇,共可以做出103 = 1 000種圓筒冰激凌。如果我們要求每個冰激凌有3種不同口味,那麼圓筒冰激凌的種類為10×9×8 = 720種,如下圖所示。

把3種不同口味的冰激凌球放到一個圓筒裡,共有3! = 6種排列方式

但是,我們真正需要考慮的問題是:在先後次序無關緊要的情況下,每個杯裝冰激凌包含3種不同口味,共有多少種排列方式?既然先後次序不重要,種類肯定會減少。事實上,數量會減少為圓筒冰激凌的1/6。為什麼會這樣呢?因為每個杯裝的3種不同口味的冰激凌(比如,巧克力、香草和薄荷口味),在裝到圓筒裡時都有3! = 6種排列方式。也就是說,圓筒冰激凌的種類是杯裝冰激凌的6倍。所以,杯裝冰激凌的數量是:

10×9×8的另一種寫法是10! / 7!(儘管第一種寫法更便於計算)。因此,杯裝冰激凌的種類數可以寫成。我們把這個表達式稱為「10選3」,記作,它的值是120。一般而言,從n個不同對像中選擇k個,並且不考慮先後次序的活動被稱為「n選k」,公式為:

數學界把這類計數問題稱作「組合」(combinations),把 這種形式的數字稱作「二項式係數」(binomial coefficients),把需要考慮先後次序的計數問題稱作「排列」(permutations)。這些術語在使用時很容易發生混淆,例如,我們經常把「密碼鎖」說成「combination lock」(數字組合鎖),實際上應該是「permutation lock」(數字排列鎖),因為數字的先後次序非常重要。

如果冰激凌店出售20種口味的冰激凌,你希望在一個圓筒中裝5種不同口味的冰激凌(次序不重要),那麼各種組合的數量為:

順便告訴大家,如果你們的計算器沒有專門計算的按鈕,也可以使用互聯網,在搜索引擎中輸入「20選5」,就可能會找到答案。

二項式係數有時會出現在似乎需要考慮先後次序的問題之中。如果我們拋10次硬幣,硬幣正反面的排列方式(例如,正反正反反正正反反反,正正正正正正正正正正)有多少種呢?由於每次拋擲都有兩個可能的結果,因此根據乘法法則,一共有210 = 1 024個可能的排列,而且每種結果的發生概率都是相同的。(第一次聽到這個結論時,有些人會感到吃驚,因為他們認為得到例子中給出的第二種結果的概率小於第一個。但實際上,得到這兩個結果的概率都是。)不過,拋10次硬幣,得到4個正面的概率大於10個正面,這是因為只有一種情況可以得到10個正面,這種情況發生的概率是。那麼,拋10次得到4個正面的情況有多少種呢?這樣的排列要求10次中有4次是正面朝上,其他6次都是反面朝上。從10次中選取4次,共有 = 210種排列方式。(與從10種口味中選擇4種不同口味冰激凌的情況相似。)因此,拋擲10次硬幣,在公平公正的情況下,正好得到4個正面的概率是:

≒20%

延伸閱讀

我們自然而然地就會想到一個問題:從10種口味的冰激凌中挖3個球,可以重複選擇同一口味,一共可以製成多少種圓筒冰激凌?(103 / 6顯然不是正確答案,因為它連整數都不是!)直接的解法是:根據每個圓筒中有幾種口味的冰激凌,分三種情況考慮。如果只有1種口味,自然只有10種可能。如果有3種口味,根據前面的討論,我們知道共有 = 120種可能。如果有2種口味,我們知道有種選取辦法,然後還要考慮哪種口味挖2個球,因此共有2× = 90種可能。把這三種情況匯總起來,共可以製作出10 + 120 + 90 = 220種圓筒冰激凌。

還有一種解法,無須分成三種情況,也可以得到正確答案。所有的圓筒冰激凌都可以表示成3個星號和9條豎線的形式。例如,選擇第1、2、2種口味的冰激凌可以表示成下面這種星號—豎線排列:

選擇第2、2、7種口味時,上述排列就會變成:

下面這種排列

則表示圓筒中有第3、5、10種口味的冰激凌。3個星號與9條豎線的所有排列均對應不同的圓筒冰激凌。這些符號一共佔據12個位置,其中3個位置上是星號。因此,星號與豎線的排列一共有 = 220種。推而廣之,從n個對象中選取k個對象,不考慮先後次序,而且可以重複選取,可選方案的數量就是k個星號與n – 1條豎線構成的排列,也就是說,有種選擇方案。

很多涉及概率問題的遊戲都與組合有關。例如,在購買如上圖所示的加州彩票時,你需要從1~47中選擇5個不同的號碼,此外,還需要在1~27中選擇一個MEGA號碼(該號碼也可以是你選擇的另外5個號碼中的一個)。因此,MEGA號碼共有27種選擇,另外5個號碼共有種選擇。那麼,加州彩票的號碼組合共有:

因此,你贏得大獎的概率小於4 000萬分之一。

接下來,我們來研究撲克牌遊戲的奧秘。通常,具有代表性的「一手牌」是從一副52張撲克牌(不含大小王)中選取5張構成的。因此,一手牌的組合方案數量是:

在撲克牌遊戲中,像上圖這種花色相同的5張牌被稱為「同花」。同花一共有多少種組合呢?要構成一手同花牌,首先要選擇一個花色,有4種可能。(我心中的第一選擇是黑桃。)從這套花色的牌中選擇5張牌,共有多少種組合呢?一副牌中共有13張黑桃,從中選擇5張,就有種方案。因此,同花的數量是:

= 5 148

也就是說,拿到一手同花牌的概率是5 148/2 598 960,大約為1 / 500。如果你是一名嚴謹的撲克牌遊戲玩家,你還需要從5 148中減去4×10 = 40,因為5張牌順連時就會變成「同花順」。

撲克牌遊戲中的「順子」是指5張順連的牌,例如,A2345、23456…10JQKA。如下圖所示:

順子一共有10個不同類型(從最小的牌開始),在選擇了某個類型(例如,34567)後,這5張牌還需要分別從4種花色中做出選擇。因此,順子的數量一共是:

10×45 = 10 240

這個數字大約是同花組合數量的兩倍,拿到一手順子牌的概率大約是1 / 250。正因為拿到一手同花牌的難度高於一手順子牌,所以同花牌在撲克牌遊戲中的價值高於順子牌。

價值更高的一手牌是「滿堂紅」,它指的是5張牌中有3張牌的點數相同,另外2張牌的點數相同。例如:

要構成滿堂紅的牌型,先要為3張牌選擇點數(13種方案),然後為另外2張牌選擇其他點數(12種方案)。(假設我們選擇了3個Q,2個7。)接下來,我們還需要為它們分配花色。選擇3個Q有 = 4種組合,選擇2個7有 = 6種組合。因此,滿堂紅的數量是:

13×12×4×6 = 3 744

拿到一手滿堂紅牌的概率是3 744/2 598 960,約為1/700。

下面,我們比較一下拿到滿堂紅與「兩對」這兩種牌型的概率。兩對是指有2張牌為同一點數,還有2張牌同為另一點數,剩下的那張牌的點數與其餘4張都不同。例如:

很多人以為兩對的數量是13×12,但這種算法其實犯了重複統計的錯誤,因為先選一對Q、後選一對7,與先選一對7、後選一對Q是一樣的結果。正確的算法是先算(同時選擇一對Q和一對7),然後為第5張牌選擇一個點數(比如5),最後為它們分配花色。因此,兩對的數量是:

也就是說,出現這種牌型的概率約為5%。

剩下的牌型就不再一一講解了,我只給出答案,由大家自行驗證。「四條」這種牌型(例如A♠A♡A♢A♣8♢)的數量為:

像A♠A♡A♢9♣8♢這樣的牌型名叫「三條」,數量是:

「一對」的牌型,例如A♠A♡J♢9♣8♢,數量為:

它在所有牌型中的比例約為42%。

延伸閱讀

那麼,不是對子、順子和同花的「垃圾牌」有多少種呢?你可以從 中減去上述各種情況的總和,也可以通過下述方式直接計算:

上式第一項計算的是選擇任意5種不同點數(所有點數均不相同)的一手牌數量,其中不包括像34567這樣的10類「順子」牌。第二項計算的是為所選的5張牌分別賦予一種花色,每張牌有4種可選花色,但我們必須去掉5張同花的4種情況。結果表明,差於一對的牌型占50.1%,有49.9%的牌型至少不比一對差。

接下來的問題非常有意思,它有三種解法,而且其中有兩種解法是正確的!這個問題是:5張牌中至少有一個A的牌型有多少種?有人可能張口就答:4×。他們認為,先選1個A,共有4種可能;然後從剩餘的51張牌(包括其餘的A)中隨意選擇4張。遺憾的是,這個答案是錯誤的,因為某些牌型(不只包含1個A)被統計了不止一次。例如,A♠A♡J♢9♣8♢,在先選擇A♠(再選擇其他4張牌)時會統計這個牌型,在先選擇A♡(再選擇其他4張牌)時會再次統計這個牌型。正確的解法是:根據牌型中A的個數,把這個問題分成4種情況考慮。例如,有且只有1個A的牌型有 種(先選1個A,其餘4張牌都不是A)。繼續考慮它含2、3和4個A的情況,就可以得出至少有1個A的牌型總數:

但是,如果從相反的角度來考慮,計算就會簡單得多。不含有A的牌型很容易算出來,數量是。因此,至少含有1個A的牌型數量是:

我們發現撲克牌遊戲中各種牌型的價值大小取決於其概率大小。例如,由於一對比兩對的出現概率高,因此一對的價值低於兩對。各種牌型的價值由低至高的次序是:

一對,兩對,三條,順子,同花,滿堂紅,四條,同花順

只要記住「1、2、3、順同花,2–3、4、同花順」(「2–3」指滿堂紅),就不會搞錯它們的次序。

現在,假設我們的撲克牌遊戲裡可以這樣使用那兩張王牌:共有54張牌,兩張王牌是百搭牌,你可以賦予它們任意點數,以便湊成價值最大的牌型。例如,如果你拿到了A♡A♢K♠8♢和王牌,可以選擇把王牌當作A,這樣就湊成了三條。如果你把王牌當作K,牌型就是兩對,價值低於三條。

為王牌賦予什麼點數才能形成價值最大的牌型?

於是,有意思的問題隨之而來。如果按照傳統方法判斷牌型的價值高低,那麼在你拿到像上圖這種既可被視為三條又可被視為兩對的牌型時,你肯定選擇三條,而不願意選擇兩對。但是,這樣做的結果是:被視為三條的牌型數量超過被視為兩對的牌型,兩對反而變成一種更少見的牌型。如果我們試圖通過提高兩對的牌值來解決這個問題,就會導致兩對的數量超過三條,同樣的問題再次出現。1996年,數學家史蒂夫·加德布斯(Steve Gadbois)發現了這個現象,並得出了一個令人吃驚的結論:如果撲克牌遊戲中可以使用王牌,就不可能始終根據牌型概率來決定牌型的價值。

帕斯卡三角形和聖誕節禮物

請仔細觀察下圖中的帕斯卡三角形(Pascal』s triangle):

用符號表示的帕斯卡三角形

我們在本書第1章學過,把數字排列成三角形就會表現出一些有趣的規律。本章討論的數字排列成三角形時,也會形成非常美麗的規律。這個三角形被稱為帕斯卡三角形,如上圖所示。利用公式,我們可以把上圖中的符號變成數字,如下圖所示,然後尋找其中的規律。本章將對大多數規律做出解釋,但你在第一遍閱讀時盡可以略過不讀,只要瞭解它有哪些規律即可。

用數字表示的帕斯卡三角形

在用符號表示的帕斯卡三角形中,第0行只有一項,即 = 1。(記住,0! = 1。)在用數字表示的帕斯卡三角形中,由於所有行的第一項和最後一項都是1,因此:

請認真觀察第5行:

第5行:1 5 10 10 5 1

注意,第二項是5。一般而言,第n行的第2項是n。這是有道理的,因為這個數字表示從n個對象中選取1個的方案數量,它的值等於n。還請注意,這個三角形的每一行都對稱:從左至右看與從右至左看是一樣的。例如,第5行中有:

這個規律的一般表達式為:

延伸閱讀

有兩個方法可以證明這種對稱關係。根據公式,我們可以進行代數證明:

但是,無須借助公式,我們也能理解其中的道理。例如,為什麼= 呢?數字表示(從10種口味的冰激凌中)選擇3種口味的冰激凌放到一個杯子裡,這同時意味著有7種口味的冰激凌不會被放到杯子裡,兩者是一回事。

你也許還看出了另外一個規律:各行中的所有數字,除去開頭和結尾的那些1以外,都是其正上方的兩個數字之和。我們把這個令人驚訝不已的關係稱作「帕斯卡恆等式」(Pascal』s identity)。例如,觀察帕斯卡三角形的第9行和第10行:

每個數字都是其正上方的兩數之和

這是為什麼呢?既然120 = 36 + 84,那麼換成計數問題,這個等式就變成以下形式:

為了理解其中的道理,我們先來思考這個問題:如果一家商店出售10種口味的冰激凌,你要買一個包含3種不同口味的圓筒冰激凌(口味的次序不重要),會有多少種選擇呢?第一種答案是我們已經知道的:。但是,我們還可以換一個方法解決這個問題。假設其中一種口味是香草味,那麼不含香草味的圓筒冰激凌有多少種呢?答案是,因為我們可以在剩下的9種口味中任意選擇3種。含有香草味的圓筒冰激凌有多少種呢?如果香草味是必選口味,那麼其餘兩種口味有種可選方案。因此,一共有+種選擇。哪個答案是正確的呢?兩個方法的邏輯都正確,因此兩個答案都正確,也就是說它們的值是相同的。同理(如果你願意,也可採用代數方法),對於0~n中的任意數k,下列公式都是成立的:

接下來,我們把帕斯卡三角形中各行的數字分別相加(如下圖所示),觀察其中的規律。

帕斯卡三角形中的各行數字之和都是2的冪次方

可以看出,各行數字之和全部是2的冪次方。具體地說,第n行的數字和是2n。為什麼會這樣呢?我們可以對這個規律換一種表述方式:第0行的和是1,之後每增加一行,和就會隨之增加一倍。借助帕斯卡恆等式(我們剛才已經完成了它的證明),就能明白其中的道理。例如,在求第5行的和時,我們用第4行的數字來改寫求和算式,就會得到:

1 + 5 + 10 + 10 + 5 + 1

= 1 + (1 + 4) + (4 + 6) + (6 + 4) + (4 + 1) + 1

= (1 + 1) + (4 + 4) + (6 + 6) + (4 + 4) + (1 + 1)

由此可見,第5行的數字之和正好是第4行數字之和的兩倍。同理可證,和加倍的這條規律永遠成立。

將其轉換成二項式係數的形式,第n行的所有數字之和為:

從各項本身來看,它們都可以表示成階乘的形式,通常可以被多個不同的數整除,但是各項之和竟然只有一個底數2,這個結果真的令人意想不到。

這條規律還可以通過組合予以解釋,我們把這個方法稱為組合證明法。我們通過一家出售5種口味冰激凌的商店,來解釋第5行的所有數字之和。(第n行的證明過程與之類似。)

口味各不相同的圓筒冰激凌一共有多少種?

如果要求所選冰激凌口味各不相同,一共可以製成多少種圓筒呢?圓筒裡可以放入1、2、3、4或5種口味的冰激凌,而且先後次序不重要。有2種口味的冰激凌有多少種?前文中說過,有 = 10種。根據所選口味的數量,圓筒冰激凌的總數為:

化簡後是1 + 5 + 10 + 10 + 5 + 1。此外,我們也可以用乘法法則來回答這個問題。我們先不考慮圓筒中有幾種口味的冰激凌,而是針對每種口味考慮是否把它放進圓筒裡。例如,巧克力味的冰激凌有2種選擇(放或不放),香草味有2種選擇(放或不放),以這種方式考慮全部5種口味的情況。(注意,如果我們針對每種口味所做的選擇都是「不放」,最終得到的將是一個空圓筒,但這個結果是允許出現的。)因此,我們一共可以做出的圓筒冰激凌數量是:

2×2×2×2×2 = 25

由於兩種方法都是合乎邏輯的,因此:

證明完畢。

延伸閱讀

通過類似的組合證明法可以發現,如果以間隔一個數的方式對第n行求和,得數是2n – 1。對於奇數行而言,這個規律很好理解。以第5行為例,1 + 10 + 5與被排除在外的5 + 10 + 1的得數一樣,都等於所有數字之和2n 的1/2。對於偶數行而言,這個規律同樣有效。以第4行為例,1 + 6 + 1 = 4 + 4 = 23。一般而言,對於任意的n≥1,都有:

這是為什麼呢?等式左邊表示圓筒中的冰激凌口味數量是偶數(冰激凌共有n種且口味各不相同)。我們也可以通過在第1至第(n – 1)種口味的冰激凌中做選擇的方式配製出這些冰激凌。第1種口味的冰激凌有2個選擇(放或不放),第2種口味有2個選擇……第(n – 1)種口味有2個選擇。但是,要讓圓筒中冰激凌的口味數量是偶數,最後一種口味只能有1個選擇。因此,冰激凌口味為偶數的圓筒數量是2n – 1。

把帕斯卡三角形轉化成直角三角形的形式,就可以發現更多的規律。最前面的一列(第0列)的各項都是1,緊隨其後的一列(第1列)都是1、2、3、4等正整數。第2列的前幾項是1、3、6、10、15…大家應該比較熟悉,這些都是我們在第1章裡討論過的三角形數。第2列的各個數字也可以寫成:

第k列的各項是 ,…

現在,我們把任意列的前幾個數字(可多可少)相加,看看它們的和有什麼特點。例如,如果我們把第2列的前5個數字相加,如下圖所示:

帕斯卡直角三角形表現出形似「曲棍球球棒」的規律

即1 + 3 + 6 + 10 + 15 = 35,得數正好是15的右下方的那個數字。換句話說:

這是「曲棍球球棒恆等式」的一個實例。這個規律之所以被稱作曲棍球球棒恆等式,是因為在帕斯卡直角三角形中,它表現為一個數字從一長列數字的末端伸出的形狀,與曲棍球球棒十分相似。為了理解這個規律的成因,我們假設有一支由7人組成的曲棍球球隊,每名球員的球衣上都有一個不同的號碼,分別是1、2、3、4、5、6、7。我需要挑選其中3名球員去上一堂訓練課,一共有多少種選擇方案呢?由於次序不重要,因此共有個方案。接下來,我們分幾種情況來討論這個問題。7號球員被選中的方案有多少種?在等效的前提下,這個問題可以變成:7是被選中的3個號碼中最大的選擇方案有多少種?由於7已經包含在內,另兩名球員的選擇方案有種。接下來,6是最大號碼的選擇方案有多少種?在這種情況下,6號是必選的,7號則不能選,因此剩下的2名球員有種選擇方案。同理,5號、4號和3號為最大號碼的選擇方案分別有種。由於最大號碼只能是3、4、5、6或7,因此我們已經考慮了所有可能的情況,也就是說,選擇3名球員的方案共有 + + … +種,與上述等式的左邊正好一樣。因此,這個證明結果的一般表達式為:

我們利用這個公式,來解決每個聖誕節都可能需要考慮的一個重要問題。歌曲《聖誕12天》中唱道,深深愛著你的人在第1天會送給你1份禮物(1只鷓鴣鳥),在第2天送給你3份禮物(1只鷓鴣鳥和2只斑鳩),在第3天送給你6份禮物(1只鷓鴣鳥、2只斑鳩和3只法國母雞)……現在的問題是:12天後,你一共收到了多少份禮物?

12天後,愛你的人一共送給你多少份聖誕禮物?

在聖誕假期的第n天,你收到的禮物總數是:

(利用三角形數的公式和k = 1時的曲棍球球棒恆等式可以得出上述結果。)因此,第1天你會收到 = 1份禮物,第2天你會收到 = 3份禮物,到了第12天,你會收到份禮物。利用曲棍球球棒恆等式,你收到的禮物總數是:

因此,如果你準備在明年把這些禮物分批送給自己,就意味著你每天都可以收到一件禮物(別忘了,生日那天你不需要給自己送禮物)!

給大家送上一首喜慶的歌——《聖誕假期的第n天》,慶祝這道題得出了美妙的答案。

聖誕假期的第n天,我的真愛送給我

n個新奇的小玩意兒

n – 1個好玩的東西

n – 2個有意思的禮物

……

數一數

n天以來

我一共收到多少份禮物?

正好是份。

接下來,我們討論帕斯卡三角形的一個最奇怪的規律。我們把帕斯卡三角形裡的奇數圈起來,仔細觀察就會發現大三角形裡還有小三角形。

圈出帕斯卡三角形裡的奇數

接下來,我們畫一個更大的16行帕斯卡三角形,並把其中的奇數換成1,偶數換成0。仔細觀察,就會發現每一對0和每一對1下面都是0。由此可見,兩個偶數相加或者兩個奇數相加,它們的和都是偶數。

更大的帕斯卡三角形裡的奇數

再接下來是一個更大的帕斯卡三角形。在這個256行的帕斯卡三角形裡,所有奇數都構成了黑色三角形,所有偶數都構成了白色三角形。

帕斯卡三角形與謝爾賓斯基三角形的「邂逅」

上幅圖是謝爾賓斯基三角形(分形的一種)的近似圖形。謝爾賓斯基三角形是隱藏在帕斯卡三角形中的眾多寶藏之一。再給大家一個驚喜。帕斯卡三角形中,每行有多少個奇數?觀察第1行至第8行(不含第0行),我們發現奇數的個數分別是2、2、4、2、4、4、8、2。儘管這些數都是2的冪次方,但似乎沒有明顯的規律。事實上,2的冪次方是一個重要的特點。例如,正好有2個奇數的行是第1、2、4、8行,這些數都是2的冪次方。為了找到一般性規律,我們需要利用一個事實:每個大於或等於0的整數都可以表示成2的冪次方之和的形式。例如:

1 = 1

2 = 2

3 = 2 + 1

4 = 4

5 = 4 + 1

6 = 4 + 2

7 = 4 + 2 + 1

8 = 8

第1、2、4、8(這些數字都是一個2的冪次方)行有2個奇數,第3、5、6(這些數字都是兩個2的冪次方之和)行有4個奇數,第7(3個2的冪次方之和)行有8個奇數。下面,給大家介紹一個令人吃驚但是非常美麗的法則。如果n是p個2的冪次方之和,那麼第n行中奇數的個數就是2p。例如,第83行有多少個奇數呢?由於83 = 64 + 16 + 2 + 1,即4個2的冪次方之和,因此第83行有24 = 16個奇數!

延伸閱讀

為了滿足大家的好奇心,我告訴大家一個事實(但在這裡就不提供證明過程了):

k = 64a + 16b + 2c + d

只要a、b、c、d等於0或1,就是奇數。具體來說,k的值肯定是下面這些數字中的一個:

0,1,2,3,16,17,18,19,64,65,66,69,80,81,82,83

在本章結束之前,我再給大家介紹最後一個規律。我們已經知道帕斯卡三角形各行之和的規律(2的冪次方)和各列之和的規律(曲棍球球棒),如果沿對角線方向求和呢?

帕斯卡三角形與斐波那契數列的「邂逅」

如上圖所示,沿對角線方向求和時,我們得到的和是:

1,1,2,3,5,8,13,21,34

這些數字就是我們下一章將要討論的內容:奇妙的斐波那契數列。