組合數學學習筆記2

2022-05-16 11:41:24 字數 3397 閱讀 3652

\(\) 為第一類斯特林數,表示將 \(n\) 個不同元素劃分為 \(k\) 個圓排列的方案數。

有遞推式

\[=+(n-1)

\]\(\) 為第二類斯特林數,表示將 \(n\) 個不同元素劃分為 \(k\) 個非空子集的方案數。

有遞推式和通項式

\[=+k\\

=\sum_^ \fraci^n}

\]上公升冪和下降冪的定義

\[x^}=\prod_^ (x+k)\\

x^}=\prod_^ (x-k)

\]斯特林數可以把上公升/下降冪和普通冪結合起來

\[x^}=\sum_ x^k\\

x^n=\sum_ (-1)^ x^}\\

x^n=\sum_ x^}\\

x^}=\sum_ (-1)^ x^k

\]還有階乘

\[n^k=\sum_^k \binom i!

\]從上公升/下降冪轉到普通冪用的是第二類,否則用的是第一類。

關於下降冪和組合數,有一些式子

\[\binom k^}=\binom n^}

\]考慮列舉高度為 \(n\) 的建築放在**。這樣就把左邊和右邊切開了,分成獨立的兩塊。我們不妨考慮左邊的情況(右邊本質是相同的)

\(f(i,j)\) 表示 \(i\) 個建築,從左向右看能看到 \(j\) 個建築的方案數。

\[f(i,j)=f(i-1,j-1)+(i-1)\times f(i-1,j)

\]這是第一類斯特林數的遞推式。

考慮左右兩個答案合併起來。

\[ans=\sum_^ \binom

\]這東西可以變成(具體數學 p221 6.29)

\[ans=\binom

\]具體理解為把左右兩邊的圓排列合起來考慮,即 \(n-1\) 個數中選取 \(a+b-2\) 個圓排列,然後分 \(a-1\) 個到左邊,\(a+b-2\) 個到右邊。

code:

\[\begin

ys &= \sum_^ \binom \sum_^ j! \binom & 冪\to階乘\\

&= \sum_^ j! \sum_^ \binom \binom & 交換求和號\\

\binom \binom &= \frac\\

&= \frac \frac\\

&= \binom \binom\\

ys &= \sum_^ j! \binom \sum_^ \binom & 提乙個組合數出去\\

&= \sum_^ j! \binom \sum_^ \binom\\

&= \sum_^ j! \binom 2^ & 下指標求和

\end

\]code:

\[\begin

e(x)^k &= e(x^k)\\

&= \sum_^ i^k \binom \frac \frac}}\\

&= \frac \sum_^ \binom i^k (m-1)^\\

&= \frac\sum_^ j! \binom \sum_^ \binom(m-1)^ & 同上題\\

&= \frac\sum_^ j! \binom m^ & 二項式定理

\end

\]code:

乙個和下降冪無關的做法

\[\begin

ys &= \sum_^ \sum_^ a_ik^ x^k \binom\\

&= \sum_^ a_i \sum_^ x^k k^i \binom\\

&= \sum_^ a_i \sum_^ j! \binom \sum_^ \binom x^ & 同上題\\

&= \sum_^ a_i \sum_^ j! \binom x^ \sum_^ \binom x^\\

&= \sum_^ a_i \sum_^ j! \binom x^ (x+1)^

\end

\]不過裡面有組合數,不大好處理……考慮用公式把階乘乘上組合數換成下降冪就行了。但其實我們 overcomplicate 了這個問題。如果一開始就用下降冪會更好(上題應該一樣)

我們有多項式轉下降冪多項式

\[b_i=\sum_^ a_j\\

f(x)=\sum_^ b_i x^}

\]\[\begin

ys &= \sum_^ b_i \sum_^ x^k k^} \binom & 轉下降冪多項式\\

&= \sum_^ b_i \sum_^ x^k n^} \binom & 下降冪與組合數\\

&= \sum_^ b_i n^} x^ \sum_^ x^ \binom\\

&= \sum_^ b_i n^} x^ (x+1)^

\end

\]其實兩種解法本質沒有什麼不同,只不過第一種中,下降冪用階乘乘上乙個組合數表示了,所以看上去會複雜一些。

code:

學校裡推的式子,又因為懶得打latex,就先鴿著(?

code:

感覺很厲害的一道題目。

首先題目中有乙個非常不好的 \(k\) 次方。我們可以轉化成:

\[d(i,j)^k=\sum_^ \binom i!

\]於是有:

\[\begin

s(u) &= \sum_^ \sum_^ \binom} i!\\

&= \sum_^ i! \sum_^ \binom}\\

\end

\]考慮用換根 dp 求出後面那個組合數求和。設 \(f(u,t)\) 表示 \(u\) 子樹內的 \(\binom}\) 之和。關於組合數的轉移,我們有加法公式,所以可以:

\[f(u,t)=\sum_ f_+f_

\]然後是換根。\(g(v,t)\) 表示子樹外的和。父親的貢獻為 \(g(u,t)+g(u,t-1)\),兄弟的貢獻為 \(f(u,t)+f(u,t-1)-(f(v,t)+2f(v,t-1)+f(v,t-2))\)。

\[f(v,t)=g(u,t)+g(u,t-1)+f(u,t)+f(u,t-1)-(f(v,t)+2f(v,t-1)+f(v,t-2))

\]然後 dp 好之後統計一下答案即可。

第二類斯特林數的奇偶性……

考慮斯特林數的遞推式

\[\begin

&= + m \\

&\equiv + [2 \not\mid m] \\

\end

\]考慮畫出轉移圖。每乙個點都可以斜著向右上走,但是只有 \(m\) 為偶數的時候才可以向右走。即求最終的路徑方案數的奇偶性。考慮用組合數計算,我們要有 \(m\) 次向右上走,\(n-m\) 次向右走。一共有 \(n-m\) 個機會向右上轉移,\(r=\lfloor \frac \rfloor\) 個機會向右轉移。那麼用組合數即可計算出結果

\[\binom

\]然後根據組合數的結論

\[\binom\equiv[(n \operatorname m)= m] \pmod 2

\]code:

《組合數學》學習筆記

p28 定理2.4.2 設s是多重集合,它有k種不同型別的物件,且每一種型別的有限重複數分別是n1 n2,n k n1,n2,nk 設s的大小為n n1 n 2 nk n n 1 n2 n k。則s的排列數目等於 x n n1 n2 n k x n n1 n2 nk p32 定理2.51 設s是有k...

組合數學學習筆記

常見組合計數 n球m盒分配問題 球有別,盒子有別,盒子可空 m n 每個同學都有m種選擇 球無別,盒子有別,盒子不可空 c n 1,m 1 隔板法 球無別,盒子有別,盒子可空 c n m 1,m 1 先給每個盒子放乙個,再用隔板法 環排列 n 1 線性排列有n 種,每種環排列都包含n種線性排列,所以...

組合數學學習

圓排列和項鍊排列 問題 八個人圍在乙個桌子吃飯,怎麼坐?先簡單看看 這是乙個圓排列,我們可以把它變成線排列。可以知道我們可以從4個方面剪開這個環得到4種排列。2341 1234 3412 4123 如果從n個數中取r個進行線排列 p n,r 種方法。但如果是圓排列呢,由上面的例子可知四個線排列就等於...