母函式專題(一)概念部分
在2020年的CMO試題中出現了母函式的運用,先前數學競賽中關於此方向的文章並不多,故筆者在此發表自己學習時的感想
基礎概念
對於實數序列$ a_{0},a_{1},\dots ,a_{n},\dots $,他的生成函式為
\[G(x) = a_{0} + a_{1}x + a_{2}x^{2} + \dots + a_{n}x^{n} +\dots = \sum_{k=0}^{\infty}{a_{k}x^{k}}
\]
比如
\[\frac{1}{1-x}=\sum_{k=0}^{1}{x^k}
\]
(因為通過分析學可以得到在\(0<x<1\)上有上式成立,具體請參考數學分析類材料)
比較重要的有
\[\frac{1}{1-ax}=\sum_{k=0}^{\infty}{a^k x^k}
\]
\[\frac{1}{1-x^r}=\sum_{k=0}^{\infty}{x^{rk}}
\]
\[\frac{1}{(1-x)^n}=\sum_{k=0}^{\infty}{C^{k}_{n+k-1}x^k}
\]
\[\frac{1}{(1+x)^n}=\sum_{k=0}^{\infty}{C^{k}_{n+k-1}(-1)^kx^k}
\]
\[\frac{1}{(1-ax)^n}=\sum_{k=0}^{\infty}{C^{k}_{n+k-1}a^kx^k}
\]
\[e^x=\sum^{\infty}_{k=0}{\frac{x^k}{k!}}
\]
但是第一眼看到生成函式可能覺得這玩意沒有啥用(筆者也是這麼覺得的)
下面舉例來說明生成函式最基本的用法
基礎例項演示
計數原理
例\(1\):求\(e_1+e_2+e_3=17\)的解的個數,其中\(2\leq e_1 \leq 5, 3\leq e_2 \leq 6, 4\leq e_3 \leq 7\)
解 具有上述限制的解的個數是
\[(x_2+x_3+x_4+x_5)(x_3+x_4+x_5+x_6)(x_4+x_5+x_6+x_7)
\]
的展開式中\(x_1^7\)的係數(聰明的讀者應該已經發現了重點)
原式實則是\(e_k\)是否能夠取到某數的生成函式表達(取不到的項即為0)
通過這種方法,在展開之時便完成了計數的任務(計算量和正常計數差別不大,但是可以輕鬆的讓電腦完成計算)(OIer狂喜)
根據遞推關係求解數列通項公式
例\(2\):已知數列\(\{a_n\}\)滿足遞推關係:\(a_k=3a_{k-1},k=1,2,\dots\),且滿足初始條件\(a_0=2\),求解\(\{a_n\}\)通項公式.
解:不妨設\(\{a_n\}\)的生成函式為
\[G(x)=\sum_{k=0}^{\infty}{a_{k}x^{k}}
\]
那麼容易知曉
\[xG(x)=\sum_{k=0}^{\infty}{a_{k}x^{k+1}}=\sum_{k=1}^{\infty}{a_{k-1}x^{k}}
\]
使用遞推關係得知
\[\begin{aligned}
G(x)-3xG(x)&=\sum_{k=0}^{\infty}{a_{k}x^{k}}-\sum_{k=1}^{\infty}{a_{k-1}x^{k}}\\
&= a_0 + \sum_{k=1}^{\infty}{(a_k-3a_{k-1})x^k}\\
&=2
\end{aligned}\]
所以
\[(1-3x)G(x)=2
\]
求解\(G(x)\),得到\(G(x)=\frac{2}{1-3x}\)
展開即得
\[G(x)=\sum^{\infty}_{k=0}{2*3^kx^k}
\]
所以\(a_k=2*3^k\)