生成函数
普通生成函数
公式:
\[F(x)=\sum_{n}a_n \times x^n
\]
如果有多个普通生成函数相乘:
\[G(x) \times F(x) = \sum_n x^n \sum_{i} a_i \times b_{n-i}
\]
封闭形式:
在生成函数表示时,我们可以简化一下,就是封闭形式。
举个例子:
\[a=\left \langle 1,1,1,\dots \right \rangle
\]
\[F(x)=\sum_n a_n \times x^n
\]
\[=\sum_n x^n
\]
容易发现:
\[F(x) \times x = F(x) -1
\]
\(解释:相当于将 F(x) 的式子向左平移一位。\)
解方程得:
\[F(x) \times (x-1) = -1
\]
\[F(x)=\frac{1}{1-x}
\]
指数生成函数
公式:
\[\hat{F}(x)=\sum_n a_n \times \frac{x^n}{n!}
\]
如果有多个指数生成函数相乘:
\[\hat{F}(x) \times \hat{G}(x)=\sum_i a_i \frac{x^i}{i!} \sum_j b_j \frac{x^j}{j!}
\]
\[=\sum_n x^n \sum_{i=0}^n a_i b_{n-i} \frac{1}{i!(n-i)!}
\]
\[=\sum_n \frac{x^n}{n!} \sum_{i=0}^n \left(^n_i\right) a_ib_{n-i}
\]
封闭形式:
见 OI Wiki
例题:
将每个食物的生成函数列出来,再做做就对了。