《具體數學》果真十分“具體”,遠沒有數學分析、高等代數那么“抽象”。這里記錄了我在閱讀這本書時所采擷的“心動瞬間”——這些數學公式真是令人心動——可以把這篇文章當做檢索目錄,遇到問題時:1、Ctrl+F;2、找到對應章節后翻書。
遞歸問題
河內塔問題
-
如何確定遞歸式?
-
記\(T_n\)表示\(n\)個圓盤的最小步數
-
\(T_n \le 2 T_{n-1} + 1\), 可以構造;
-
\(T_n \ge 2T_{n-1} + 1\),要把最大一個拿出來至少要\(T_{n-1}+1\),把剩下的移動正確位置,至少需要\(T_{n-1}\)。
-
-
如何求出封閉形式?
-
數學歸納,假設\(T_n = 2^n - 1\)。
-
暴力求解,記\(U_n = T_n + 1\),則\(U_n = 2U_{n-1} = 2^n\),從而解出\(T_n\)。
-
平面上的直線
-
歐拉公式:F = 1 + E - V
-
每加入一條邊,F先+1;每多出一個交點,就會多兩條邊,從而F又+1.
-
目標是最大化交點的數量。
-
-
切\(n\)刀,最多把披薩分成幾塊?
- 只要所有直線都不平行,第\(i\)條直線可以和之前\(i-1\)條直線相交,從而F加\(i\).
-
\(n\)條折線呢?
-
每一對折線可以產生\(4\)個頂點,自己本身可以產生1個,初始有1個。
-
\(4 \frac{n(n-1)}{2} + n + 1 = 2n^2 - n + 1\)
-
-
\(n\)個120°三叉呢?
- 每對可以產生3個,自己本身可以多2個,初始有1個。
約瑟夫問題
-
每隔2個干掉一個?
-
遞歸,第一輪會把所有偶數位置都干掉
-
\(J(2n) = 2J(n) - 1\)
-
\(J(2n + 1) = 2 J(n) + 1\)
-
-
對遞歸式打表+數學歸納
- \(J(2^m + l) = 2l + 1\),\(0 \le l < 2^m\)
-
用二進制形式表示?
- \(J(n)\)相當於把\(n\)在二進制下循環左移了一位。
-
一些性質
-
\(J(J(J(.....J(n))))\)最后會停在不動點——二進制下全是1的數
-
解\(J(n) = \frac{n}{2}\),得\(l = \frac{1}{3} (2^m - 2)\),m為奇數時一定有解。
-
-
-
拓展一下遞歸式?
-
\(f(1) = \alpha\); \(f(2n) = 2 f(n) + \beta\); \(f(2n + 1) = 2 f(n) + \gamma\).
-
顯然\(f(n) = A(n) \alpha + B(n) \beta + C(n) \gamma\).
-
法一:打表、歸納
-
法二:帶入\(f(n)=1\),\(f(n)=n\).解出對應的\(\alpha,\beta,\gamma\),從而解出\(A(n),B(n),C(n)\).
-
-
-
叕拓展一下遞歸式?
-
\(f(j) = \alpha_j\); \(f(dn + j) = c f(n) + \beta_j\).
-
\(f((b_m b_{m-1} .... b_1 b_0)_d) = (\alpha_{b_m} \beta_{b_{m-1}} .... \beta_{b_0})_c\).
-
和式
和式和遞歸式
-
將和式轉化為遞歸式
-
可得$R_n = A(n) \alpha + B(n) \beta + C(n) \gamma $。
-
用上一節的成套方法,即用\(R_n\)為簡單函數,解出 \(\alpha,\beta,\gamma\),從而解出\(A(n),B(n),C(n)\)
-
-
將遞歸式轉為和式
-
\(a_n T_n = b_n T_{n-1} + c_n\); \(T_0\)是個常數。
-
令\(s_n = \frac{a_{n-1} a_{n-2} .... a_1}{b_n b_{n-1} b_2}\); 則有\(b_n s_n = a_{n-1} s_{n-1}\).
-
則有:\(T_n = \frac{1}{a_n s_n} (s_1 b_1 T_0 + \sum_{k=1}^{n} s_k c_k)\).
-
注意,要求所有\(a_n,b_n\)均不為0.
-
-
例題:計算快速排序復雜度
-
\(C_0 = C_1 = 0\); \(C_n = n + 1 + \frac{2}{n} \sum_{k=0}^{n-1} C_k\).
-
先轉換為遞歸式
-
兩邊乘\(n\):$n C_n = n(n+1) + 2\sum_{k=0}^{n-1} C_k $.
-
對應到\(n-1\): $(n-1) C_{n-1} = n(n-1) + 2\sum_{k=0}^{n-2} C_k $.
-
相減:\(n C_n = (n + 1) C_{n-1} + 2n\); \(C_2 = 3\).
-
-
應用公式
-
\(a_n = n\); \(b_n = n+1\); \(c_n = 2n - 2[n=1]+2[n=2]\); \(s_n = \frac{2}{n(n+1)}\)
-
\(C_n = 2(n+1)\sum_{k=1}^{n} \frac{1}{k+1} - \frac{2}{3}(n+1)\).
-
-
封閉形式
-
調和數:\(H_n = \sum_{k=1}^{n} \frac{1}{k}\).
-
\(C_n = 2(n+1) H_n - \frac{8}{3}n - \frac{2}{3}\).
-
-
和式的處理
-
擾動法
-
\(S_n = \sum_{i=0}^{n} a_n\)
-
\(S_n + a_{n+1} = a_0 + \sum_{i=0}^{n} a_{i+1}\)
-
嘗試用\(S_n\)來表示右邊
-
-
例題:\(S_n = \sum_{k=0}^{n} k 2^k\)
- \(S_n + (n+1)2^{n+1} = \sum_{k=0}^{n} (k+1) 2^{k+1} = 2S_n + (2^{n+2} - 2)\);化簡即可
-
拓展:\(S_n = \sum_{k=0}^{n} k x^k\).
-
\(\sum_{k=0}^{n} x^k = \frac{1-x^{n+1}}{1-x}\)
-
求導:\(\sum_{k=0}^{n} k x^{k-1} = \frac{1-(n+1)x^n + nx^{n+1}}{(1-x)^2}\).
-
看起來離散和連續之間,有一種不可告人的關系
-
多重和式
-
切比雪夫單調不等式
-
\(S = \sum_{1 \le j < k \le n} (a_k - a_j) (b_k - b_j)\)
-
$2S = \sum_{1 \le j,k \le n} (a_k - a_j) (b_k - b_j) = 2n \sum_{k=1}^{n} a_k b_k - 2 (\sum_{k=1}^{n} a_k) (\sum_{k=1}^{n} b_k) $
-
\((\sum_{k=1}^{n} a_k) (\sum_{k=1}^{n} b_k) = n \sum_{k=1}^{n} a_k b_k - \sum_{1 \le j < k \le n} (a_k - a_j) (b_k - b_j)\).
-
當\(a_i,b_i\)不減時,\(S \ge 0\),上式的等號變成\(\le\)
-
當\(a_i\)不減,\(b_i\)不增,\(S \le 0\),上式取\(\ge\)
-
-
連續情況下的切比雪夫不等式
- \((\int_a^b f(x) dx) (\int_a^b g(x) dx) \le (b-a) (\int_a^b f(x)g(x)dx)\); 若\(f(x),g(x)\)不減
-
例題:\(S_n = \sum_{1 \le j < k \le n} \frac{1}{k-j}\)
-
\(S_n = \sum_{0 \le k < n} H_k\)
-
\(S_n = \sum_{k=1}^{n} \frac{n-k}{k} = n H_n - n\)
-
從而\(\sum_{0 \le k < n} H_k = n H_n - n\). 真是神奇
-
一般性的方法
討論\(S_n = \sum_{k=1}^{n} k^2\)的解法
-
打表+猜測答案+數學歸納
-
擾動法
- 需要用\(\sum_{k=1}^{n} k^3\)來擾動.
-
成套方法
-
\(R_n = R_{n-1} + \beta + \gamma n + \delta n^2\)
-
\(R_n = A(n) \alpha + B(n) \beta + C(n) \gamma + D(n) \delta\)
-
假定\(\delta = 0\),\(A(n),B(n),C(n)\)和之前一樣;再令\(R_n = n^3\),解出\(D(n)\)
-
-
用積分估計,對誤差遞歸
-
\(\int_0^n x^2 dx = \frac{n^3}{3}\)
-
令\(E_n = S_n - \frac{n^3}{3}\)
-
\(E_n = S_{n-1} + n^2 - \frac{n^3}{2} = E_{n-1} + \frac{(n-1)^3}{2} + n^2 - \frac{n^3}{2} = E_{n-1} + n - \frac{1}{3}\)
-
\(E_n\) 超級好算。
-
-
展開和放縮
-
\(S_n = \sum_{1 \le j \le k \le n} k = \sum_{1 \le j \le n} (j+n)(n-j+1)/2\)
-
拆開即可
-
有限微積分
-
下降冪
-
\(x^{\underline{m}} = x(x-1)(x-2)...(x-m+1)\),\(m > 0\)
-
\(x^{\underline{-m}} = \frac{1}{(x+1)(x+2)...(x+m)}\),\(m > 0\)
-
\(x^{\underline{m+n}} = x^{\underline{m}} (x - m)^{\underline{n}}\)
-
-
求解\(\sum_{a \le x < b} f(x)\)
-
若能找到\(f(x) = g(x+1) - g(x)\)
-
則答案為\(g(b) - g(a)\)
-
-
一些“原函數”
-
\(x^{\underline{m}} = \frac{1}{m+1}[(x+1)^{\underline{m+1}} - x^{\underline{m+1}}]\),\(m \ne -1\)
-
$x^{\underline{-1}} = \frac{1}{x+1} = H(x+1) - H(x) \(,\)H(x)$是調和數
-
\(x = \frac{1}{2}[(x+1)x - x(x-1)]\)
-
\(x^n\) 要先用斯特林數化成\(x^{\underline{m}},1 \le m \le n\)的形式,然后分別找原函數
-
\(2^x = 2^{x+1} - 2^x\),和連續時\(e^x\)類似
-
\(c^x = \frac{c^{x+1} - c^x}{c-1}\)
-
-
離散的“分部積分”
-
\(\sum_{a \le x < b} u(x) [v(x+1) - v(x)] = u(b) v(b) - u(a) v(a) - \sum_{a \le x < b} [u(x+1) - u(x)] v(x+1)\)
-
例題:\(\sum_{0 \le x < n} H_x x\)
-
\(x = \frac{1}{2}[(x+1)^{\underline{2}} - x^{\underline{2}}]\),\(v(x) = \frac{1}{2} x^{\underline{2}}\)
-
\(H_{x+1} - H_x = x^{\underline{-1}}\)
-
答案為\(\frac{n^2}{2}(H_n - \frac{1}{2})\).
-
-
無限和式
-
無限個非負數的和?
-
對於\(\sum_{k \in K} a_k\),如果存在常數\(A\),使得\(K\)的任意有限子集\(F\)都滿足\(\sum_{k \in F} a_k \le A\),則稱\(A\)為一個上界;最小的\(A\)(即下確界)稱為\(\sum_{k \in K} a_k\)的和。
-
如果不在常數\(A\),則和為無限;可以用數分中的\(\epsilon - \delta\)語言寫清楚。
-
如果和有限且\(K\)為自然數集,則\(\sum_{k \in K} a_k = \lim_{n->\infty} \sum_{0 \le k \le n} a_k\)。
-
-
無限和式的定義
-
定義\(x = x^+ - x^-\),\(x^+ = x [x > 0]\),\(x^- = -x[x<0]\)
-
\(\sum_{k \in K} a_k = \sum_{k \in K} a_k^+ - \sum_{k \in K} a_k^-\)
-
如果\(\sum_{k \in K} a_k^+\)和\(\sum_{k \in K} a_k^-\)都有限,則無限和式存在;如果\(\sum_{k \in K} a_k^+\)無限,另一個有限,則無限和式為\(+ \inf\). 反之亦然。如果都無限,則不予定義。
-
和有限的無限和式之間,滿足分配率、結合律、交換律
-
-
一些反例
-
\(T = 1 + 2 + 4 + 8 + .....\)
-
\(2T = 2 + 4 + 8 + .... = T - 1\). \(T = -1\).
-
事實上\(T=+\infty\)
-
-
\(T = 1 - 1 + 1 - 1 + 1 .....\)
-
\((1 - 1) + (1 - 1) + .... = 0\)
-
\(1 + (-1 + 1) + (-1 +1)+.... = 1\)
-
事實上由等比數列可得,和為\(\frac{1}{2}\)。一群整數的和竟然是分數.....
-
-
\(...+(- \frac{1}{4}) + (- \frac{1}{3}) + (- \frac{1}{2}) + 1 + \frac{1}{2} + \frac{1}{3} + ......\)
-
可以等於0
-
可以等於\(1 + H_{2n} - H_{n+1}\),每次右邊選兩個數,左邊選一個數,求極限。和為\(1 + \ln(2)\)。
-
-
整值函數
底和頂
-
\(\lceil x \rceil - \lfloor x \rfloor = [x \text{不是整數}]\)
-
\(\lfloor \frac{n}{m} \rfloor = \lfloor \frac{cn}{cm} \rfloor\)
底和頂的應用
-
\(\lfloor \sqrt{\lfloor x \rfloor} \rfloor = \lfloor \sqrt{x} \rfloor\)
-
證明:設\(m = \lfloor \sqrt{\lfloor x \rfloor} \rfloor\),展開得到\(x\)的范圍
-
拓展:若\(f(x)\)是個單調遞增的函數,且若\(f(x)\)是整數能推導出\(x\)是整數,則\(\lfloor f(\lfloor x \rfloor) \rfloor = \lfloor f(x) \rfloor\)
-
-
\(\lceil \sqrt{\lfloor x \rfloor} \rceil = \lceil \sqrt{x} \rceil\)???
- 否;當\(m^2 < x < m^2 + 1\)時,即\(x\)不是整數,且\(\sqrt{\lfloor x \rfloor}\)是整數時,為反例
-
在\(1 \le n \le 1000\)中,有多少整數\(n\)滿足\(\lfloor n^{\frac{1}{3}} \rfloor | n\)?
-
設\(m = \lfloor n^{\frac{1}{3}} \rfloor\)
-
\(1 + \sum_{m=1}^{9} \lfloor \frac{(m+1)^3 - m^3}{m} \rfloor = 172\)
-
用多項式近似,可得 \(W = \frac{3}{2} N^{\frac{2}{3}} + O(N^{\frac{1}{3}})\)
-
-
譜
-
\(Spec(\alpha) = \{ \lfloor \alpha \rfloor , \lfloor 2 \alpha \rfloor, \lfloor 3 \alpha \rfloor, ........ \}\)
-
\(\sqrt{2}\)和\(2+\sqrt{2}\)的譜,構成所有正整數的划分。
-
底和頂的遞歸式
-
\(K_0 = 1\);\(K_{n+1} = 1 + \min(2 K_{\lfloor \frac{n}{2} \rfloor}, 3 K_{\lfloor \frac{n}{3} \rfloor})\);證明\(K_n \ge n\)
- 歸納法,需要證明\(K_n \ge n + 1\)
-
約瑟夫問題新解(以 \(m = 3\) 為例):
-
剛開始有\(n\)個人,每次有一個活下去就把他的標號+n。
-
1和2變成\(n+1\),\(n+2\);4和5變成\(n+3\),\(n+4\)
-
\(3k+1,3k+2\)變成\(n+2k+1,n+2k+2\)
-
-
用代碼模擬(詳見課本);還可以換成方法加速
-
\(D_0^{(q)} = 1\);\(D_n^{(q)} = \lceil \frac{q}{q-1} D_{n-1}^{(q)} \rceil\),\(n > 0\)
-
\(J_q(n) = qn+1 - D_k^{(q)}\),\(k\)是最大的使得答案不是負數的值
-
-
mod:二元運算
-
\(x \mod{0} = x\)
-
\(c (x \mod{y}) = (cx) \mod{(cy)}\)
-
\(n = \lfloor \frac{n}{m} \rfloor + \lfloor \frac{n + 1}{m} \rfloor + ... \lfloor \frac{n + m - 1}{m} \rfloor\)
-
\(n = \lceil\frac{n}{m} \rceil + \lceil \frac{n - 1}{m} \rceil + ... \lceil\frac{n - m + 1}{m} \rceil\)
-
\(\lfloor mx \rfloor = \lfloor x \rfloor + \lfloor x + \frac{1}{m} \rfloor + ... \lfloor x + \frac{m - 1}{m} \rfloor\)
底和頂的和式
-
\(\sum_{0 \le k < n} \lfloor \sqrt{k} \rfloor\)
-
method1 : \(\sum_{m = 1}^{\sqrt{n}} ((m+1)^2 - m^2) m\)
-
method2 : \(\sum_{m=1}^{\sqrt{n}} n - m^2\),線性性質
-
-
設\(\alpha\)是無理數,則\(\{n\alpha\}\)在\(n->\infty\)時在[0,1)之間是一致分布的
- 可以直接當做積分?
-
\(\sum_{0 \le k < m} \lfloor \frac{nk + x}{m} \rfloor\)
-
原式\(= \sum_{0 \le k < m} \lfloor \frac{x + nk~mod~m}{m} \rfloor + \frac{kn}{m} - \frac{kn~mod~m}{m}\).
-
第二部分是個等差數列,\(\frac{(m-1)n}{2}\)
-
令\(d = \gcd(n,m)\),則\(kn~mod~m\)會遍歷\(0,d,2d,...m-d\)。每個數出現\(d\)次。
-
第三部分也是等差數列,\(- \frac{m-d}{2}\)
-
第一部分:\(d*(\lfloor \frac{x}{m} \rfloor+ \lfloor \frac{x+d}{m} \rfloor + .... + \lfloor \frac{x+m-d}{m} \rfloor) = d \lfloor \frac{x}{d}\rfloor\)
-
-
發現將\(n,m\)意義對調,答案不變。
- 本質上這是在數坐標軸在一條直線下方有多少點,\(n,m\)對調相當於轉坐標軸。
-
數論
整除性
- 拓展歐幾里得算法
素數
- 算術基本定理(唯一分解定理)
素數的例子
-
素數有無窮多個
-
\(M = 2 \times 3 \times 5 \times .... \times P_n + 1\),與\(P_1,...,P_n\)全部互質,又多出一個“質數”(事實上不一定是質數)
-
\(e_n = e_1 e_2 ... e_{n-1} + 1 = e_{n-1}^2 - e_{n-1} + 1\)
- 封閉形式:\(e_n = \lfloor E^{2^n} + \frac{1}{2} \rfloor\),\(E = 1.264\)
-
-
梅森數
- \(2^p - 1\),\(p\)是質數。但並不是所有梅森數都是素數。
-
質數密度
-
偶數比完全平方數更“稠密”,\(1-n\)有\(\frac{n}{2}\)個偶數;有\(\sqrt{n}\)個完全平方數。
-
$P_n $ ~ \(n \ln n\);\(\pi(x)\) ~ \(\frac{x}{\ln x}\);故質數個數比偶數少,比完全平方數多。
-
階乘的因子
-
階乘以指數方式增長:斯特林公式
-
\(\epsilon_p(n!) = \sum_{k \ge 1} \lfloor \frac{n}{p^k} \rfloor \le \frac{n}{p-1}\)
- 當\(p=2\)時,\(\epsilon_2(n!) = n - v_2(n)\),\(v_2(n)\)為二進制上1的個數
-
素數有無窮個的另一種證明:
-
\(p^{\epsilon_{p}(n!)} \le p^{n/(p-1)} \le 2^n\)
-
一個質數只能對\(n!\)產生\(2^n\)的貢獻,如果質數個數有限,取\(n\)足夠大就會產生矛盾
-
互素(Stern-Brocot樹)
-
用於構造所有\(m \perp n\)的非負分數
-
構造方式
-
第一層只有\(\frac{0}{1}\)和\(\frac{1}{0}\)
-
第\(k+1\)層的分數構成 為 第\(k\)層的所有分數 加上 第\(k\)層相鄰兩個分數,分子和分母分別相加得到
- \(\frac{m}{n},\frac{m'}{n'} -> \frac{m+m'}{n+n'}\)
-
-
性質
-
每一層的每對相鄰的分數都滿足\(m'n - mn' = 1\)
- 歸納法,第一層是對的;每次\(\frac{m}{n},\frac{m'}{n'}\)會新建\(\frac{m+m'}{n+n'}\),分別驗證。
-
為什么\(\frac{n+n'}{m+m'}\)是最簡分數?
- 利用拓展歐幾里得,因為\(m'n - mn' = 1\),說明\(ax+by=1\)成立,所以\(\gcd=1\).
-
是否會重復出現分數?
- 不存在的,這是一棵嚴格的二叉搜索樹。因為$ \frac{m}{n} < \frac{m+m'}{n+n'} < \frac{m'}{n}$.
-
是否有分數遺漏?
-
不存在的,推導可證明:\(a+b \ge m'+n'+m+n\). 每一步右式都會增加,在\(a+b\)步以內就可以找到解。
-
該式說明:\(\frac{m'+m'}{m+n}\)是[\(\frac{m}{n}\),\(\frac{m'}{n'}\)]之間分子加分母和最小的分數???這可離不開第一條性質!
-
-
-
應用
-
分數定位
-
用\(2 \times 2\)的矩陣存下每個分數的左右祖先,構造矩陣\(L\)和\(R\)。到左兒子則右乘\(L\),右兒子則右乘\(R\).
-
法一:每次右乘一個\(L,R\),判斷大小。
-
法二:利用左乘。如果分子大,說明左乘了\(R\),不然左乘了\(L\)。可以用倍增定位。\(O(\log n)\).
-
-
無理數定位
-
用SB樹逼近和二分逼近效果差不多
if a < 1 then output(L) a = a/(1-a) else output(R) a = a - 1
-
-
-
拓展:Farey級數
-
階為\(N\)的法里級數為\(F_N\),它由所有分母不超過\(N\)的最簡分數組成。
-
\(F_N\)構造:從\(F_{N-1}\)繼承,在\(F_{N-1}\)中相鄰\(\frac{m}{n}\)和\(\frac{m'}{n'}\),滿足\(n+n'=N\)的中間,加入分母為N的數。
-
同余關系
-
\(2^{2n} - 1\)是3的倍數,因為\(2^2 \pmod{3} = 1\)
-
$ad \equiv bd \pmod{md} $ 等價於 \(a \equiv b \pmod{m}\).
-
\(ad \equiv bd \pmod{m}\)等價於\(a \equiv b \pmod{\frac{m}{\gcd(m,d)}}\).因為剩下的因子可以用逆元除掉。
-
\(a \equiv b \pmod{m}\)且\(a \equiv b \pmod{n}\),則\(a \equiv b \pmod{lcm(n,m)}\).因為\(a-b\)既是n的倍數也是m的倍數
獨立剩余
-
剩余系\(Res(x) = (x \mod m_1, \cdots,x \mod m_r)\),\(m_i \perp m_j\).
-
每個分量上可以獨立地進行運算,相當於高精度
-
例子:計算大矩陣的行列式,選取若干質數,除法變成逆元;最后CRT合並起來!
-
-
CRT
- 相當於要找到(1,0,0),(0,1,0),(0,0,1)這些分量對應的數;用拓展歐幾里得求出逆元。
-
求\(x^2 \equiv 1 \pmod{m}\)解的個數
-
將\(m\)分解成若干個\(p^k\),改寫成\((x-1)(x+1) \equiv 0 \pmod{p^k}\).
-
當\(p \ne 2\)時,只有兩個解1和p-1
-
當\(p=2\)時,若\(k=1\)解為1;\(k=2\)時解為1,3;\(k > 2\)時,\(x-1\)和\(x+1\)可以都是2的倍數,但是不可能都是4的部分,所以其中一個要是\(2^{k-1}\)的倍數。所以有4個解。
-
設\(r\)為質因子個數,答案為\(2^{r - [2|m]+[4|m]+[8|m]}\).
-
進一步的應用
-
\(0, n, 2n, 3n,....,(m-1)n \pmod{m}\)為\(0,d,2d,...,m-d\)重復d遍;\(d = \gcd(n,m)\)
-
費馬大定理:\(a^n + b^n = c^n\)在\(n > 2\)時沒有正整數解
-
費馬小定理:\(n^{p-1} \equiv 1 \pmod{p}\),\(n \perp p\)
- 證明:\(n*2n*.....*(p-1)n \equiv (p-1)!\)
-
Miller_Rabin:驗證\(2^{32}+1\)是不是質數?
- 若是質數,應用費馬小定理:$3^{2^{32}} \equiv 1 \pmod{2^{32}+1} $.矛盾
-
威爾遜定理:\(n\)是質數時,\((n-1)! \equiv -1 \pmod{n}\)
- 除了1和\(n-1\),其他數的逆元兩兩匹配,所以\((n-1)! \equiv n-1 \mod{n}\)
\(\varphi\)函數和\(\mu\)函數
-
歐拉定理:\(n^{\varphi(m)} \equiv 1 \pmod{m}\),\(n \perp m\)
- 拓展歐拉定理,處理\(n\)和\(m\)不互質的情況。
-
莫比烏斯反演:\(g = f * 1\)等價於\(f = g*\mu\)
- 廣義莫比烏斯反演:\(g(x) = \sum_{d \ge 1} f(x / d)\)等價於\(f(x) = \sum_{d \ge 1} \mu(d) g(x / d)\)
-
積性的傳遞性
-
\(g(m) = \sum_{d|m} f(d)\)
-
左右任何一邊是積性函數,都可以推出剩下一邊是積性函數。
-
-
杜教篩:求\(\Phi(x) = \sum_{1 \le k \le x} \phi(k)\)
-
\(\sum_{d \ge 1} \Phi(\frac{x}{d}) = \frac{x(x+1)}{2}\);考慮所有\(0 \le m < n \le x\)的分數,d為分子和分母的\(\gcd\).
-
預處理小的\(\Phi(m)\),分塊遞歸求解,時間復雜度\(O(n^{\frac{2}{3}})\).
-
-
Polya經典題:求解長度為\(m\),顏色數為\(n\)的不同項鏈個數
- 考慮一種項鏈會被計算多次:\(\frac{1}{m} \sum_{d | m} \phi(d) n^{\frac{m}{d}}\)
二項式系數
基本恆等式
-
定義(此定義和之前的不一樣)
-
當整數\(k < 0\),\(\binom{n}{m} = 0\),否則\(\binom{n}{m} = \frac{n^{\underline{m}}}{m!}\)
-
當不是整數時,可以用廣義階乘,取極限;如\(\binom{\frac{1}{2}}{n}\)
-
-
性質
-
\(\binom{-1}{k} = (-1)^k\)
-
當\(n < 0\)時,\(\binom{n}{n} = 0\)
-
當\(n<0\)時,不滿足對稱性\(\binom{n}{k} = \binom{n}{n-k}\)
-
由加法公式,\(\binom{r}{k} = \binom{r-1}{k-1} + \binom{r-1}{k}\);由此可以拓展出\(r<0\)的情況。
-
-
恆等式
-
吸收恆等式:\(\binom{r}{k} = \frac{r}{k} \binom{r-1}{k-1}\);\(k \binom{r}{k} = r \binom{r-1}{k-1}\)
-
對角線求和:\(\sum_{k \le n} \binom{r+k}{k} = \binom{r+n+1}{n}\)
-
上指標求和:\(\sum_{0 \le k \le n} \binom{k}{m} = \binom{n+1}{m+1}\)
-
二項式定理:\((x+y)^r = \sum_{k} \binom{r}{k} x^k y^{r-k}\)
-
上指標反轉:\(\binom{r}{k} = (-1)^k \binom{k-r-1}{k}\),當\(r\)是負數時可以用這種方法快速求解!!!
-
同行交錯和:\(\sum_{k \le m} \binom{r}{k} (-1)^k = \sum_{k \le m} \binom{k-r-1}{l} = \binom{-r}{m} = (-1)^m \binom{r-1}{m}\)
-
雙選恆等式:\(\binom{r}{m} \binom{m}{k} = \binom{r}{k} \binom{r-k}{m-k}\)
-
范德蒙卷積:\(\sum_{k} \binom{r}{k} \binom{s}{n-k} = \binom{r+s}{n}\),表5-3有多種形式,可以查表!
-
基本練習
-
\(\sum_{k} \binom{m}{k} / \binom{n}{k} = \frac{n+1}{n+1-m}\),雙選恆等式
-
\(\sum_{k} k \binom{m-k-1}{m-n-1}/ \binom{m}{n} = \frac{n}{m-n+1}\),用吸收恆等式
-
\(Q_n = \sum_{k \le 2^n} \binom{2^n - k}{k} (-1)^k\),遞推式,找規律,有循環節
-
\(\sum_k k \binom{m-k-1}{m-n-1}\),把\(k\)寫成\(\binom{k}{1}\),用范德蒙卷積
-
\(\sum_{k} \binom{n}{k} \binom{s}{k} k = s \binom{n+s-1}{n-1}\),用吸收恆等式,再范德蒙卷積
-
\(\sum_{k} \binom{n+k}{2k} \binom{2k}{k} \frac{(-1)^k}{k+1}\),先用雙選恆等式,把\(2k\)去掉;再用吸收恆等式, 把\(\frac{1}{k+1}\)拿掉;然后上指標翻轉,最后范德蒙卷積
-
問題七和問題八用和式代替一個組合數,技巧性太強;不如用后面的超幾何
處理的技巧
-
取一半
-
\(r^{\underline{k}} (r - \frac{1}{2})^{\underline{k}} = (2r)^{\underline{2k}} / 2^{2k}\)
-
由此可以推出:\(\binom{- \frac{1}{2}}{n} = (\frac{-1}{4})^n \binom{2n}{n}\)
-
-
高階差分
-
\(\Delta f(x) = f(x+1) - f(x)\);\(\Delta^n f(x) = \sum_{k} \binom{n}{k} (-1)^{n-k} f(x+k)\)
-
多項式可以用斯特林數改寫成下降冪多項式,稍作修改可以寫成牛頓級數:
-
\(f(x) = \sum_d c_d \binom{x}{d}\),牛頓級數的求導非常方便;書上還寫着一種\(O(n^2)\)的求牛頓級數系數的方法。
-
\(\sum_k \binom{n}{k} (-1)^k (a_0 + a_1k + ... + a_n k^n) = (-1)^n n! a_n\)
-
-
-
反演
-
\(g(n) = \sum_{k} (-1)^k \binom{n}{k} f(k)\)等價於\(f(n) = \sum_{k} (-1)^k \binom{n}{k} g(k)\)
-
二項式反演:\(g(n) = \sum_{k} \binom{n}{k} f(k)\)等價於\(f(n) = \sum_{k} (-1)^{n-k} \binom{n}{k} g(k)\)
- 本質就是令\(f'(n) = (-1)^n f(n)\)
-
重排公式:\(D(n) = n! \sum_k \frac{(-1)^k}{k!}\);\(D(n) = \lfloor \frac{n!}{e} + \frac{1}{2} \rfloor + [n == 0]\)
-
生成函數
-
\((1+z)^r (1+z)^s = (1+z)^{r+s}\),該式子可以直接證明范德蒙恆等式
-
\((1-z)^r (1+z)^r = (1-z^2)^r\);\(\sum_k \binom{r}{k} \binom{r}{n-k} (-1)^k = (-1)^{n/2} \binom{r}{n/2}\)
-
\(\frac{1}{(1-z)^{n+1}} = \sum_{k \ge 0} \binom{n+k}{n} z^k\);\(\frac{z^n}{(1-z)^{n+1}} = \sum_{k \ge 0} \binom{k}{n} z^k\)
-
乘上\(\frac{1}{1-z}\)相當於做前綴和
-
廣義部分待補
超幾何函數
-
定義:\(F(a_1...a_m;b_1...b_n;z) = \sum_{k \ge 0} \frac{\prod a_i^{\bar{k}} z^k}{\prod b_i^{\bar{k}} k!}\)
-
轉化:\(\frac{t_{k+1}}{t_k}\)是一個關於\(k\)的有理函數,分子作為上參數,分母作為下參數
-
廣義階乘和\(\Gamma\)函數用於解釋退化的情況
-
查表:\(F(a,b;c;1)\)和\(F(a,b,-n;c,a+b-c-n+1;1)\),SAA恆等式
超幾何變換
-
超幾何函數通用解法就是查表,本章介紹幾種技巧拓展表庫
- 反射定律;習題25、26
-
求導,移位:
-
\(\frac{d}{dz} F(ai;bi;z) = \frac{a_1...a_m}{b_1...b_n} F(a_i+1;b_i+1;z)\)
-
\((\vartheta + a_1) F(a_1,...a_m;b_1...b_n;z) = a_1 F(a1+1,a_2,...,a_m;b_1...b_n;z)\)
-
\((\vartheta + b_1 -1) F(a_1,...a_m;b_1...b_n;z) = (b_1 - 1) F(a1,a_2,...,a_m;b_1-1,b_2...b_n;z)\)
-
\(\vartheta\)為\(z \frac{d}{dz}\)操作
-
這個技巧可以用於解微分方程
-
部分超幾何和式
-
利用差分法,試圖找出函數滿足\(t_k = T_{k+1} - T_{k}\),從而可以求解\(\sum_{0 \le k \le n} t_k\)。
-
\(Gosper\)算法
-
找出\(p(k),r(k),q(k)\),滿足\(\frac{t_{k+1}}{t_k} = \frac{p(k+1)}{p(k)} \frac{q(k)}{r(k+1)}\)
-
求解\(s(k)\),滿足\(p(k) = q(k) s(k+1) - r(k) s(k)\)
-
得到\(T(k) = \frac{r(k)s(k)t(k)}{p(k)}\)
-
機械求和法
-
機械求和法是個非常繁瑣的算法,用於求解給定n,對\(k\)從\(0\)到\(\infty\)求和。不能求\(k\)的部分和
-
思路是定義新的函數,應用\(Gosper\)算法,得到\(S_n\)的遞推式。
-
詳見書上的例子。
特殊的數
斯特林數
-
第一類斯特林數\([^n_k]\),第二類斯特林數\(\{ ^n_k \}\).
-
\(\{^n_k\} = k \{^{n-1}_k\} + \{^{n-1}_{k-1}\}\)
-
\([^n_k] = (n-1)[^{n-1}_k] + [^{n-1}_{k-1}]\)
-
\([^n_k] \ge \{^n_k\}\),等號成立,當且僅當\(k=n-1\)或\(k=n\)
-
\(\sum_{k=0}^n [^n_k] = n!\)
-
-
冪之間轉換(均可用歸納法證明)
-
\(x^n = \sum_k \{^n_k\} x^{\underline{k}}\)
-
\(x^{\bar{n}} = \sum_k [^n_k] x^k\)
-
\(x^{\underline{n}} = (-1)^n (-x)^{\bar{n}}\)
-
\(x^n = \sum_k \{^n_k\} (-1)^{n-k} x^{\bar{k}}\)
-
\(x^{\underline{n}} = \sum_k [^n_k] (-1)^{n-k} x^k\)
-
-
反轉公式(應用兩次冪轉換公式即可)
-
\(\sum_k [^n_k] \{^k_m\} (-1)^{n-k} = [m=n]\)
-
\(\sum_k \{^n_k\} [^k_m] (-1)^{n-k} = [m = n]\)
-
-
應用加法原則拓展至負數,有\([^n_k] = \{^{-k}_{-n}\}\)
-
書上還有一大堆用於前綴和、卷積的恆等式,可用於查表。
歐拉數
-
\(<^n_k>\)表示長度為\(n\)的排列\(\pi\),有\(k\)個位置滿足\(\pi_j < \pi_{j+1}\),即升高位置
-
\(<^n_k> = <^n_{n-1-k}>\)
-
\(<^n_k> = (k+1) <^{n-1}_{k}> + (n-k)<^{n-1}_{k-1}>\)
-
\(x^n = \sum_k <^n_k> \binom{x+k}{n}\),天吶,這個式子的組合意義是啥!!!
-
書上還有一些奇奇怪怪的恆等式哦!還有一個通項式
-
-
二階歐拉數:\(2n\)個數,\(k\)個上升,且每對\(x\)之間其他數都要大於\(x\)
-
\(<<^n_k>> = (k+1) <<^{n-1}_{k}>> + (2n-1-k)<<^{n-1}_{k-1}>>\)
-
\(\sum_k <<^n_k>> = \frac{(2n)^{\underline{n}}}{2^n}\)
-
-
斯特林多項式(由書上的恆等式推出)
-
\(\sigma_n(x) = [^x_{x-n}] / (x(x-1) \cdots (x-n))\),其中\(\sigma_n(x)\)的次數為\(n-1\)
-
斯特林多項式可以由二階歐拉數給出,於是可以處理系數為斯特林數的的生成函數的卷積。
-
調和數
-
\(H_n = \sum_{k=1}^n \frac{1}{k}\)
- 發散,且\(\ln_n < H_n < \ln n+1\)
-
例題:
-
\([^{n+1}_2] = n[^n_2]+[^n_1] = n[^n_2]+(n-1)!\)
-
兩邊除以\(n!\),求遞歸式:\([^{n+1}_2] = n! H_n\)
-
-
\(r\)次調和數:\(H^{(r)}_n = \sum_{k=1}^n \frac{1}{k^r}\)
-
\(\ln(\frac{k}{k-1}) = - ln(\frac{k-1}{k}) = \frac{1}{k} + \frac{1}{2k^2} + \frac{1}{3k^3}+ \cdots\)
-
對\(k\)從2-n求和:\(\ln n -\ln 1 = (H_n - 1) + \frac{1}{2} (H^{(2)}_n - 1) - .....\)
-
移項后,可以估計\(H_n - \ln n\)的值,記為歐拉常數\(\gamma\)
-
調和求和法
-
\(\sum_{0 \le k < n} \binom{k}{m} H_k\)
-
利用分部求和法,\(u(k) = H_k\),\(\Delta v(k) = \binom{k+1}{m+1} - \binom{k}{m+1} = \binom{k}{m}\)
-
利用吸入恆等式
-
-
\(S_n = \sum_{1 \le k \le n} \frac{H_k}{k}\)
-
\(S_n = \sum_{1 \le j \le k \le n} \frac{1}{j*k} = \frac{1}{2} ( (\sum_{1 \le k \le n} \frac{1}{k})^2 + \sum_{1 \le k \le } \frac{1}{k^2} )\)
-
第二章的技巧
-
-
\(U_n = \sum_{k \ge 1} \binom{n}{k} \frac{(-1)^{k-1}}{k} (n-k)^n\)
- 將\((n-k)^n\)二項式展開,交換順序,轉化為高階差分,利用恆等式;得\(U_n = n^n (H_n - 1)\)
伯努利數
-
求解冪和數
-
\(S_m(n) = \sum_{k=0}^{n-1} k^m = \frac{1}{m+1} \sum_{k=0}^m \binom{m+1}{k} B_k n^{m+1-k}\)
-
\(\sum_{j=0}^m \binom{m+1}{j} B_j = [m = 0]\)
-
可以用擾動法+歸納法證明
-
-
生成函數的定義:\(\frac{z}{e^z-1} = \sum_{n \ge 0} B_n \frac{z^n}{n!}\)
-
用伯努利數為系數表示三角函數
- \(\tan z = \sum_{n \ge 0} (-1)^{n-1} 4^n (4^n - 1) B_{2n} \frac{z^{2n-1}}{(2n)!}\)
-
伯努利數和斯特林數的關系
-
\(S_m(n) = \sum_{j \ge 0} \{^m_j\} \frac{1}{j+1} \sum_{k \ge 0} (-1)^{j+1-k} [^{j+1}_k] n^k\)
-
由此建立恆等式
-
斐波那契數
-
恆等式
-
\(F_{n+k} = F_k F_{n+1} + F_{k-1} F_n\);考慮走樓梯
-
\(F_{2n} = F_n F_{n+1} F_n F_{n-1}\);從而\(F_{2n}\)是\(F_n\)的倍數,歸納可得\(F_{kn}\) 是\(F_n\)的倍數
-
\(\gcd(F_m,F_n) = F_{\gcd(m,n)}\);由上式推出
-
\(\sum_{k=0}^n F_k = F_{n+2} - 1\);歸納即可
-
\(\sum_{k=1}^n F_k^2 = \sum_k F_k (F_{k+1} - F_{k-1}) = F_{n+1} F_n\);裂項相消
-
\(F_n = \frac{1}{\sqrt{5}}(\phi^n - \hat{\phi^n})\);其中\(\phi = \frac{\sqrt{5} + 1}{2}\),為黃金分割
-
\(F_{n+1} = \sum_{k=0}^n \binom{n-k}{k}\)
-
-
斐波那契數系
-
\(j >> k\) 等價於\(j \ge k +2\)
-
每個整數都有唯一的表示:\(n = F_{k_1} + F_{k_2} + ..... + F_{k_r}\)
-
\(n = (b_mb_{m-1}\cdots b_2)_F\),因為\(b_1=b_2=1\),從2開始表示唯一
-
能表示的最大值為\(F_{m+2} - 2\)
-
斐波那契奇數是指表示中,最后一位是1的數;偶數類似。
-
連項式
-
定義
-
\(K() = 1\)
-
\(K(x_1) = x_1\)
-
$K_n(x_1,\cdots,x_n) = K_{n-1}(x_1,\cdots, x_{n-1}) x_n + K_{n-2}(x_1,\cdots,x_{n-2}) $
-
-
性質
-
\(K_n(1,1,...,1) = F_{n+1}\)
-
摩爾斯碼:相當於可以放一些長度為2的多米諾骨牌;如果\(x_i\)不在,必然有相鄰的\(x_{i+1}\)或者\(x_{i-1}\)與之對應
-
\(K_n(z,z, \cdots, z) = \sum_{k=0}^{n} \binom{n-k}{k} z^{n-2k}\)
-
\(K_n(x_n,...,x_1) = K_n(x_1,...,x_n)\)
-
\(K (x_1,...x_m,x_{m+1},...x_{m+n})= K(x_1,...x_m) K(x_{m+1},...,x_{m+n}) + K(x_1,...,x_{m-1}) K(x_{m+2},...x_{m+n})\)
-
-
連項式與連分數
-
\(a_0 + \frac{1}{a_1 + \frac{1}{a_2 + \frac{1}{a3}}} = \frac{K(a_0,a_1,a_2,..,a_3)}{K(a_1,a_2,a_3,)}\);歸納之
-
\(\frac{K(a_0,a_1,a_2,a_3+1/a_4)}{K(a_1,a_2,a_3+1/a_4)} = \frac{K(a_0,a_1,a_2,a_3,a_4)}{K(a_1,a_2,a_3,a_4)}\);將連分數最后一位變化
-
-
連項式與Stern-Brocot樹
-
假設一個分數為\(R^{a_0},L^{a_1},R^{a_2},L^{a_3} ... R^{a_{n-2}}L^{a_{n-1}}\)
-
則\(F(R^{a_0}L^{a_1}R^{a_2}L^{a_3} ... R^{a_{n-2}}L^{a_{n-1}}) = \frac{K(a_0,a_1,...a_{n-1},1)}{K(a+1....a_{n-1},1)}\)
-
由此可以在連分數和SB樹之間快速轉換
-
生成函數
多米諾理論與換零錢
-
用多米諾骨牌鋪3*n矩形
-
\(U_n\)表示\(3 \times n\)的方案,\(V_n\)表示\(3 \times n\)缺一角的方案
-
\(U_n = 2 V_{n-1} + U_{n-2} + [n == 0]\)
-
\(V_n = U_{n-1} + V_{n-2}\)
-
-
寫成生成函數
-
\(U(x) = 2x V(x) + x^2 U(x) + 1\)
-
\(V(x) = x U(x) + x^2 V(x)\)
-
-
求解
-
\(V(x) = \frac{x}{1-x^2} U(x)\)
-
$U(x) = 1 + \frac{2x^2}{1-x^2} U(x) + x^2 U(x) $
-
-
若將\(U(x)\)的封閉形式展開,可以得到\(U_n\)的封閉形式;最后通過組合式的恆等式還可以化簡
-
-
換零錢
-
和OI經典題“食物”類似
-
有無限個價值為\(m\)的硬幣,其生成函數為\(1+x^m+x^{2m}+.....=\frac{1}{1-x^m}\)
-
-
划分數
- \(\frac{1}{(1-z)(1-z^2)(1-z^3).....}\)的\(z^n\)前系數為\(n\)的划分數,意義為用無窮個1-n湊成\(n\)的方案數
基本策略
-
運算
-
收斂性不作要求,因為變量\(z\)僅僅表示一個特征,我們只在乎\(z^n\)前的系數
-
左移時,要把低位“減掉”,再除以\(z^m\)
-
\(G(cz) = \sum_n g_n c^n z^n\);\(G(z^m) = \sum_n g_n z^{nm}\)
-
求導;求導+右移(每一位乘上\(n\));積分;左移+積分(每一位除以n)
-
卷積
-
前綴和:乘上\(\frac{1}{1-z}\)
-
-
常見生成函數
-
<1,-1,1,-1,1,-1,1,-1,......>;\(\frac{1}{1+z}\)
-
<1,0,1,0,1,0,1,0,.......>; \(\frac{1}{1-z^2}\)
-
<1,2,4,8,16,....>;\(\frac{1}{1-2z}\)
-
<1,4,6,4,1,0,0,...>; \((1+z)^4\)
-
<1,c,\(\binom{c+1}{2}\),\(\binom{c+2}{3}\),.....>;\(\frac{1}{(1-z)^c}\)
-
<0,1,1/2,1/3,1/4,.....>;\(\ln \frac{1}{1-z}\);積分
-
<0,1,-1/2,1/3,-1/4,....>; \(\ln(1+z)\);積分
-
<1,1,1/2,1/6,1/24,.....>;\(e^z\)
-
-
提取
-
用\(\frac{G(z) + G(-z)}{2}\)提取偶數項
-
用\(\frac{G(z) - G(-z)}{2}\)提取奇數項
-
解遞歸式
-
再探斐波那契數
-
\(g_n = g_{n-1} + g_{n-2}+[n=1]\);寫遞歸式時要注意寫出邊界項
-
\(G(z) = z G(z) + z^2 G(z) + z\) ;可推出\(G(z) = \frac{z}{1-z-z^2}\)
-
求解部分分式:\(R(z) = \frac{P(z)}{Q(z)}\)
-
\(\frac{a}{(1-pz)^{m+1}} = \sum_{n \ge 0} \binom{m+n}{m} a p^n z^n\)
-
目標將\(R(z)\)轉化成:\(\sum_i \frac{a_i}{(1-p_i z)^{m_i + 1}}\);就可以得到\(g_n\)的封閉形式
-
假設\(Q(z) = q_0 + q_1 z + .... + q_m z^m\),則令\(Q^R(z) = q_0 z^m + q_1 z^{m-1} + .... q_m\)
-
求解\(Q^R\)的根,即\(Q^R(z) = q_0 (z-p_1)...(z-p_m)\),則\(Q(z) = q_0 (1-p_1 z)...(1-p_mz)\)
-
既然求出分母的根,然后將其拆成\(\frac{..}{1-p_1z}+....\frac{..}{1-p_mz}\)
-
當根互不相同時,可以用高斯消元?或者用書上的定理。
-
-
事實上,求解部分分式的過程就是解特征方程。
-
-
帶幾分隨機的遞歸式
-
\(g_n = g_{n-1} + 2g_{n-2}+(-1)^n[n \ge 0] + [n=1]\)
-
解得\(G(z)=\frac{1+z+z^2}{(1-2z)(1+z)^2}\);用書上另一個公式來對有重根的分母進行部分分式。
-
-
互相遞歸的數列(和解方程類似)
-
換零錢封閉形式(用於OI題,類似於Code Chef的CHANGE)
-
發散級數(超幾何解微分方程)
-
完全返回的遞歸式
-
求解扇形的生成樹數量
-
分析最后一個頂點的連邊,可得
- \(f_n = f_{n-1} + \sum_{k < n} f_k + [n > 0]\)
-
前綴和用乘上\(\frac{1}{1-z}\)表示:
- \(F(z) = z F(z) + F(z) \frac{z}{1-z} + \frac{z}{1-z}\)
-
求部分分式,得\(f_n = F_{2n}\),即偶數位斐波那契數列
-
特殊的生成函數
-
表7-3給出各種系數為特殊數的生成函數,包括斯特林數、歐拉數、伯努利數
-
\(\frac{1}{(1-z)^{m+1}} \ln \frac{1}{1-z} = \sum_{n \ge 0} (H_{m+n}- H_m) \binom{m+n}{n} z^n\)
-
\(\frac{1}{(1-z)^{x+1} } = \sum_n \binom{x+n}{n} z^n\)
-
左邊:\((1-z)^{-x-1}=e^{(x+1)\ln(1/(1-z))}\),微分后,為\(\frac{1}{(1-z)^{m+1}} \ln \frac{1}{1-z}\)
-
右邊:\(\binom{x+n}{n}\)微分后,為\((\frac{1}{x+1} + \frac{1}{x+2} .... \frac{1}{x+n})\),等於\(H_{x+n} - H_x\)
-
對復雜的乘積求微分,通常將原式保留,並提取出系數,比直接寫成和式方便。
-
-
特殊情況:\(\frac{1}{1-z} \ln \frac{1}{1-z} = \sum_n H_n z^n\)
卷積
-
斐波那契卷積
- \(\sum_{k=0}^n F_k F_{n-k}\)等價於\(F^2(x)[z^n]\)
-
調和卷積
-
\(T_{m,n} = \sum_{0 \le k < n} \binom{k}{m} \frac{1}{n-k}\)
-
因\(\sum_{n \ge 0} \binom{n}{m} z^n = \frac{z^m}{(1-z)^{m+1}}\),且\(\sum_{n > 0} \frac{z^n}{n} = \ln \frac{1}{1-z}\)
-
\(T_{m,n} = [z^n]\frac{z^m}{(1-z)^{m+1}} \ln \frac{1}{1-z} = (H_n - H_m) \binom{n}{n-m}\)
-
-
卷積的卷積
-
之前的扇形生成樹個數,可以認為有一些鏈,需要從根向他們連邊。
-
\(f_n = \sum_{m > 0} \sum_{k_1+...+k_m=n} k_1k_2...k_m\)
-
即\(F(z) = G(z) + G(z)^2 + G(z)^3 + .... = \frac{G(z)}{1-G(z)}\)
-
-
卷積的遞歸式
-
卡特蘭數的括號解釋:\(C_n = \sum_k C_k C_{n-1-k} + [n = 0]\)
-
\(C(z) = z C^2(z) + 1\),解得\(C(z) = \frac{1 (+/-) \sqrt{1-4z}}{2z}\);加或減
-
當取+號時,\(C(0)\)是無窮,與事實不符;所以為減
-
用廣義二項式展開\(\sqrt{1-4z}\),可以得到卡特蘭數公式:\(C_n = \binom{2n}{n} \frac{1}{n+1}\)
-
-
拓展內容
- RANEY公式、m-RANEY公式;非常美妙,可用於簡化計數;
指數生成函數
-
\(\hat{G}(z) = \sum_{n \ge 0} g_n \frac{z^n}{n!}\)
-
\(e^z\)是<1,1,1,1,1.....>的EGF
-
\(e^{kz}\)是<1,k,\(k^2\),.....>的EGF
-
-
運算
-
求導、積分即為左移和右移
-
乘上\(z\),則右移后每一位乘上\(n\)
-
二項卷積:\(\hat{F} (z) \hat{G} (z)\)等價於\(F(z) G(z)\)時乘上組合數系數
-
-
應用:用伯努利數表示\(\sum_{k = 0}^n k^m\)
-
應用:完全圖的生成樹個數為\(n^{n-2}\)
-
考慮\(n-1\)個點的圖,選出一個生成森林,令\(n\)號點向所有聯通塊連一條邊;一個大小為\(k\)的連通塊有\(k\)種連邊方式。
-
\(t_n = \sum_{m> 0} \frac{1}{m!} \sum_{k_1+k_2+...k_m = n-1} \binom{n-1}{k_1,k_2,...,k_m} k_1k_2...k_m t_{k_1} t_{k_2}....t_{k_m}\)
-
令\(u_n = n t_n\)
-
\(\frac{u_n}{n!} = \sum_{m > 0} \frac{1}{m!} \sum_{k_1+k_2+...k_m = n-1} \frac{u_{k_1}}{k_1!}...\frac{u_{k_m}}{k_m!}\)
-
用廣義指數函數,\(\hat{U}(z) = z e^{\hat{U}(z)}\)
-
狄里克雷生成函數
-
\(\bar{G} (z) = \sum_{n \ge 1} \frac{g_n}{n^z}\)
- 黎曼函數\(\sum_{n \ge 1} \frac{1}{n^z}\) 就是<1,1,1,1....>的DGF
-
乘積:\(h_n = \sum_{d | n} f_d g_{n/d}\)
- 因為莫比烏斯函數與<1,1,1,1,1>的狄里克雷卷積為1,所以它們互為逆
-
當數列\(<g_1,g_2,....>\)是積性函數時:
-
\(\bar{G}(z) = \prod_{\text{p是質數}} (1+\frac{g_p}{p^z} + \frac{g_{p^2}}{p^{2z}}+......)\)
-
書上有一些例子
-
第八章在《概率統計》一書中有詳細介紹;第九章在數學分析或高等數學中有詳細介紹。