母函数
作者:互联网
母函数
引入(母函数的意义)
\((x_1+x_2+\dots x_k)^n\) 的多项式展开。
- 形成 \({x_1}^{n_1}\times {x_2}^{n_2}\times \dots \times{x_k}^{n_k}\) 的方案数。(满足 \(n_1+n_2+\dots +n_k=n\),下同)
\(n\) 个盒子,每个盒子有 \(k\) 种球,从每个盒子选一种球,选 \(n_1\) 个 \(x_1\),\(n_2\) 个 \(x_2\dots\) 所形成的方案数。
解:
\({n\choose n_1}\times {n-n_1\choose n_2}\times {n-n_1-n_2\choose n_3}\dots \times {n-\sum_{i=1}^{n-1}n_i\choose n_k}\)
- \({x_1}^{n_1}\times {x_2}^{n_2}\times \dots \times{x_k}^{n_k}\) 的系数。
多重集的组合数。
- 所有系数之和。
解:\(n^k\)。
由此可见,多项式展开后,其系数序列能让我们研究许多问题。
概念构建
幂级数型母函数
对于序列 \(a_0,a_1,a_2\dots ,a_n\dots\),构建函数:
\(F(x)=a_0+a_1\times x^{1}+a_2\times x^2+\dots + a_n\times x^n+\dots\)
则称 \(F(x)\) 是序列 \(a_1,a_2\dots\) 的母函数(生成函数)。
比如,\(F(x) = (1+x)^n= {n\choose 0} + {n\choose 1} + {n\choose 2} + \dots {n\choose n}\)
则 \(F(x)\) 是序列 \(\{{n\choose 0},{n\choose 1},{n\choose 2}\dots {n\choose n}\}\) 的母函数。
例 \(1\):(无穷递缩等比数列求和公式)
求 \(1,1,1,1\dots 1,\dots\) 的母函数。
解:
\(F(x)=1+x^1+x^2+x^3+\dots x^n = \frac{1}{1-x}\)
练 \(1\):求 \(1,0,1,0,1,0\dots\) 的母函数。
牛顿广义二项式定理:
\[(x+y)^{\alpha}=\sum_{n=0}^\infty{\alpha \choose n}x^{n}y^{\alpha-n} \]其中 \(\alpha\choose n\) 为牛顿二项式系数:
\[{a\choose n}=\frac{\alpha(\alpha-1) \ldots(\alpha-n+1)}{n!} \]例 \(2\):求 \(a_0,a_1,a_2,\dots a_n\dots\) 的母函数,\(a_n\) 是 \(k>0\) 时的无限重集的 \(n\) 组合数。
具体地,\(a_n={n+k-1\choose n}\)。
解:\(F(x)=(1-x)^{-k}\)
练 \(2\):确定平方数列 \(0, 1, 4, \dots n^2\) 的母函数。
指数型母函数
对于数列 \(a_0,a_1,a_2\dots a_n\),则函数:
\(F(x)=\sum_{n=0}^{\infty}{a_n\times \frac{x^n}{n!}}\)
称为数列 \({a_n}\) 的指数型母函数。
例 \(1\):数列 \(1,1,1,1,1\dots\) 的指数型母函数。
解:
(麦克劳林公式)
\(F(x)=1+\frac{x}{1!}+\frac{x^2}{2!}+\dots +\frac{x^n}{n!}+\dots=e^x\)
例 \(2\):数列 \(1, 0, 1, 0, 1, 0, 1\dots\) 的母函数。
\(F(x)=1-\frac{x}{1!}+\frac{x^2}{2!}-\dots +(-1)^n\times \frac{x^n}{n!}+\dots = e^{-x}\)
例 \(3\):数列 \(1,a, a^2, a^3\dots\) 的指数型母函数。
解:
\(F(x)=\sum_{n=0}^{\infty}{a^n\times \frac{x^n}{n!}}=e^{ax}\)
练 \(3\):数列 \(a, a^2, a^3\dots a^n\dots\) 的母函数。
应用
整数拆分问题
母函数能解决的一大问题就是整数拆分问题。
例 \(1\):共有 \(1\) 克,\(2\) 克,\(3\) 克的砝码各一枚,问能称出哪几种重量,各自有几种方案。
例 \(2\):一口袋中有 \(5\) 个红球,\(3\) 个黄球,绿、白、黑球可以任意多的提供。每次从中取 \(3\) 个,问有多少种不同取法。
例 \(3\):共有 \(1\) 克的砝码 \(3\) 枚,\(2\) 克的砝码 \(4\) 枚,\(4\) 克的 \(2\) 枚,问能称出哪几种重量,各自有几种方案。
用生成函数求解计数问题通常分为三步:
- 构造生成函数
- 化简生成函数
- 展开,得到指定项的系数
练 \(1\):有无限个红色和蓝色的球,如果从中选出 \(n\) 个球,选出的球中须有偶数个红球,求选择的方案数 \(a_n\)。
求解递归式通项公式
例1:
求满足 \(a_n=2\times a_{n-1} + 1\) 的 \(a_n\) 的通项公式。
构造 \(F(x)=0+a_1 \times x+a_2 \times x^{2}+\dots +a_n\times x^n\)
\(F(x)-2x\times F(x) = (a_2-2\times a_1)x^2+(a_3-2\times a_2)x^3+\dots (a_n-2\times a_{n-1})x^n+\dots \\ \to (1-2x)F(x)=x^2+x^3+\dots x^n\dots \\ \to F(x)=\frac{x}{(1-x)\times (1-2x)} \\ \to F(x)=\frac{1}{1-2x}-\frac{1}{1-x} \\ \to F(x) = 2+2x^2+4x^2+\dots2^{n}x^{n}-1-x-x^2-x^3-\dots x^n \\ \to a_n=2^n-1 \)
练 \(1\):
已知 \(a_0=-1,a_1=1,a_n=2a_{n-1}+3a_{n-2}+3^n\)。
求 \(a_n\) 的通项公式。
指数型母函数的应用
例 \(1\):若有 \(8\) 个元素,其中 \(a_1\) 重复了 \(3\) 次,\(a_2\) 中重复了两次,\(a_3\) 重复了 \(3\) 次,求从中取 \(4\) 个元素所产生的排列总数。
解:
构造母函数 \(F(x)=(1+\frac{x}{1!}+\frac{x^2}{2!}+\frac{x^3}{3!})\times (1+\frac{x}{1!}+\frac{x^2}{2!})\times (1+\frac{x}{1!}+\frac{x^2}{2!}+\frac{x^3}{3!})\)
\(\to \sum{b_i\times \frac{x^i}{i!}}\)
\(b_i=\sum{\frac{i!}{m_1!m_2!\dots m_k!}}\)
其中 \(b_n\) 就是从中取 \(4\) 个元素所产生的排列数。
例 \(2\):求 \(n\) 位四进制数 \(1, 2, 3\) 各出现一次的数的个数。
解:
构造母函数
\(F(x)=(\frac{x}{1!}+\frac{x^2}{2!}+\dots)^3(1+\frac{x}{1!}+\frac{x^2}{2!}+\dots)\)
\( =(e^x-1)^3\times e^x \\ =e^{4x}-3\times e^{3x}+3\times e^{2x}-e^x \\ =\sum_{n=0}^{\infty}{4^n\times \frac{x}{n!}}-\sum_{n=0}^{\infty}{3\times 3^n\times \frac{x}{n!}}+\sum_{n=0}^{\infty}{3\times 2^n\times \frac{x}{n!}}-{\sum_{n=0}^{\infty}{\frac{x}{n!}}} \\ =\sum_{n=0}^{\infty}{(4^n-3^{n+1}+3\times 2^n-1)\frac{x^n}{n!}} \)
故答案为 \(4^n-3^{n+1}+3\times 2^n-1\)
标签:dots,frac,函数,sum,times,choose 来源: https://www.cnblogs.com/mklzc/p/16486084.html