引言

這邊談的主要是關於如何應用數學的方法去計算某些常見的麻將問題的機率或其他因素的東西。其實這類的內容在知名網站「らすかるの家」當中已經收錄了不少,所以這邊我主要試圖以那邊沒有做過的計算為主。這邊在做計算時可能會常運用到組合學中的生成函數技巧,這部份所需的預備知識我想我在此可能就不解釋了,有需要的讀者可以自行參照組合學的相關書籍。

九種九牌

配牌所得到的十三張、外加第一次自摸牌共十四張牌當中,出現至少九種么九牌的機率是多少?
這個問題的答案相當於是用「A = 十四張牌當中含有九種以上么九牌的種數」、去除以「B = 十四張牌的種數」,兩者都必須考慮牌重複的情況(因為我們需要計算機率的緣故)。我們先來算比較簡單的後者,它就相當於是生成函數 ( 1 + x ) 34 × 4x14 之係數,計算結果會得到 B = 4250305029168216000。至於 A 的計算則是利用如下的生成函數 ( 1 + x ) 21 × 4 ( 1 + 4xy + 6x2y + 4x3y + x4y ) 13 去計算 x14y ii = 9 ~ 13 的係數總和,計算結果會得到 A = 13746798425456640。於是就得到特定玩家出現九種九牌的機率為 A / B、約為 0.323%,或者約 309 分之一。

我們順便來計算一下比較早期的「八種九牌」之機率好了。為了算出這個,我們需要的是「C = 十四張牌當中含有種類八種、張數九張以上的么九牌之種數」,而這靠的是計算下面的生成函數 ( 1 + x ) 21 × 4 ( 1 + 4xyz + 6x2yz2 + 4x3yz3 + x4yz4 ) 13x14y iz j 之係數總和、其中 i = 8 ~ 13、j = 9 ~ 14。計算出來的結果會是 C = 59000687131594752,於是算得機率 C / B 約為 1.388%,或者約 72 分之一。這樣計算之後就不難理解為什麼後來主流規則逐漸改成採用九種九牌而非八種九牌,因為後者的機率真的有點太高了。怎麼說呢?根據統計,一般平均打一個半莊大約總共會打 11 局(考慮連莊),假設就打 11 局好了、那麼請問在半莊當中出現至少一次八種九牌的機率是多少?這相當於是計算 1 - (1 - C / B)4 × 11,而算出來的結果約為 45.93%,換句話說,幾乎每兩場半莊當中就會出現一次八種九牌!至於九種九牌,若一樣計算,則大概是 13.28%,相對來說就好得多了。