卡特蘭數和超級卡特蘭數


卡特蘭數和超級卡特蘭數


這篇博客主要是想講一下超級卡特蘭數(大施羅德數),順帶就想講一下卡特蘭數.

卡特蘭數

定義

卡特蘭數記為\(C_n\)
\(C_1=1\)
\(\forall n \geq 2, C_n=\sum_{i=1}^{n-1}C_i C_{n-i}\)

前幾項大概是: 1, 1, 2, 5, 14, 42, 132......

直接遞推未免效率太低,我們考慮用生成函數優化.
顯然有\(C(x)=C(x)^2+x\)
解得\(C(x)={1-(1-4x)^{\frac 1 2}\over 2}\)
\((1-4x)^{\frac 1 2}\)用廣義二項式定理展開
得到\(C(x)\)\(x^n\)項系數為\(\frac 1 n \binom {2n-2}{n-1}\)

組合意義

1.\(n+1\)邊形的三角剖分方案數.
注意到任意三角形一定是某一條邊在多邊形上,然后再選一個不是這條邊的端點的點,而且注意到這樣一個三角形不會被計算兩次,所以會得到一個類似於卡特蘭數的遞推式.
如果直接枚舉一條邊然后分成兩邊的話,是算不對的,因為可能一個點不與多邊形上任意非相鄰點連邊.如果要強行這么算的話,那就得枚舉所有的邊然后除以算重的次數.

2.\(n\)個數的連乘積,只用結合律(加括號)來改變乘法順序,問有多少中乘法的順序.
考慮枚舉最后是哪兩個數相乘,不難發現是卡特蘭數的形式.

3.\(n-1\)對括號的括號序列的合法方案數.
枚舉第一個左括號所對應的右括號的位置即可.

4.從(0,0)到(n-1,n-1),每次只能往右或往上走,求不超過\(y=x\)這條直線的方案數.
考慮第一步肯定是往右邊走,然后枚舉第一個經過\(y=x\)這條直線的位置.
另外一種思路,將條件變成不經過\(y=x+1\)這條直線,那么尋找(0,0)關於\(y=x+1\)的對稱點
(-1,1),顯然每一條從(0,0)到(n-1,n-1)的不合法路徑對應一條從(-1,1)到(n-1,n-1)的不合法路徑.

超級卡特蘭數

記超級卡特蘭數為\(S_i\)
\(S_1=1\)
\(\forall i \geq 2,S_i=S_{i-1}+\sum_{i=1}^{n-1}S_iS_{n-i}\)

寫成生成函數的形式是\(S(x)=xS(x)+S(x)^2+x\)
解得\(S(x)={1-x - \sqrt{x^2-6x+1} \over 2}\)

如果還是用廣義二項式定理展開的話,經過復雜化簡,可以得到\(S_n=\sum_{i=1}^n \binom {n+i-1} {2i}C_i\),后面我們可以看見,這個式子有着清晰的組合意義.

不過網上還有一種\(O(n)\)遞推的方法,簡而言之就是快速求出\(\sqrt{x^2-6x+1}\)

接下來給出的一種方法,可以在\(O(nk)\)的復雜度快速求出k次多項式開方后前n項的值
設要開方的多項式為\(P(x)\),開方后的多項式為\(F(x)\).
\(F(x)=P(x)^{\frac 1 2}=\sum_{i=0}^{\infty} f_i x^i\)
兩邊求導,可得\(F'(x)=\frac 12 P(x)^{-\frac 12} P'(x)\)
\(F(x)P'(x)=F'(x)P(x)\)
對比每一項系數,不難得到k+1項的遞推式.

最后給出遞推公式:\((n+1)f_{n+1}=(6n-3)f_n-(n-2)f_{n-1}\),不過要注意這個遞推公式除了第一項其他的項都是超級卡特蘭數的\(\frac12\)

組合意義

相比卡特蘭數,超級卡特蘭數的唯一區別就是在遞推的時候加了一個\(S_{n-1}\),那么其組合意義也可以看做是卡特蘭數的擴展.

1.\(n+1\)邊形的任意剖分方案數.
還是考慮枚舉一條多邊形上的邊,那么有可能這條邊仍然與另一個點拉成一個三角形,也有可能這條邊上沒有,那么把這兩種加起來就是定義的遞推式

2.括號序列,每個位置可能左括號,右括號和0.括號對數與0的個數之和為n-1, 問合法的括號序列數.
同樣枚舉第一個是左括號還是0.
值得一提的是,可以看成先插括號再插0,那么枚舉括號對數i,0有n-i-1個,需要放入2i+1個位置中,那么不難得到上面通過廣義二項式推出來的式子.

3.從(0,0)到(n-1,n-1),每次能往右,往上,往右上走,求不超過\(y=x\)這條直線的方案數.
枚舉第一次是走右上還是走右.
同樣使用容斥思想,把答案轉化為從(0,0)到(n-1,n-1)減去(-1,1)到(n-1,n-1).
那么從(0,0)到(n,m)的路徑條數怎么求呢.可以考慮枚舉往右上的次數,然后還是考慮先走右和上,然后再把走右上的插入即可.












免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM