定义
f ( x ) = a 0 + a 1 x + a 2 x 2 + a 3 x 3 + . . . f(x)=a_{0}+a_{1}x+a_{2}x^{2}+a_{3}x^{3}+... f(x)=a0+a1x+a2x2+a3x3+...称 f ( x ) f(x) f(x)是序列 a 0 , a 1 , a 2 , a 3 . . . a_{0},a_{1},a_{2},a_{3}... a0,a1,a2,a3...的生成函数
题目
有1克、2克、3克、4克的砝码各一枚,能称出哪几种重量?每种重量各有几种可能方案?
- 1 1 1个 1 1 1克砝码可以看成 1 + x 1 1+x^{1} 1+x1,1表示不取, x 1 x^{1} x1表示取一个重量为 1 1 1。
- 1个2克砝码可以看成 1 + x 2 1+x^{2} 1+x2,…
- 1个3克砝码可以看成 1 + x 3 1+x^{3} 1+x3,…
- 1个4克砝码可以看成 1 + x 4 1+x^{4} 1+x4,…
- 那么生成函数就是
f ( x ) = ( 1 + x 1 ) ( 1 + x 2 ) ( 1 + x 3 ) ( 1 + x 4 ) f(x)=(1+x^{1})(1+x^{2})(1+x^{3})(1+x^{4}) f(x)=(1+x1)(1+x2)(1+x3)(1+x4)
f ( x ) = 1 + x + x 2 + 2 x 3 + 2 x 4 + 2 x 5 + 2 x 6 + 2 x 7 + x 8 + x 9 + x 10 f(x)=1+x+x^{2}+2x^{3}+2x^{4}+2x^{5}+2x^{6}+2x^{7}+x^{8}+x^{9}+x^{10} f(x)=1+x+x2+2x3+2x4+2x5+2x6+2x7+x8+x9+x10 - 这个函数中可以看出重量为3克的方案有两种,重量为7的方案有两种,重量为10的有1种。
- 不难发现指数表示重量,系数表示方案数。
特殊情况
当
a
a
a = {
1
,
1
,
1
,
.
.
1
1,1,1,..1
1,1,1,..1}时,
f
(
x
)
=
1
+
x
+
x
2
+
x
3
+
x
4
+
.
.
.
=
1
1
−
x
f(x)=1+x+x^{2}+x^{3}+x^{4}+...=\frac{1}{1-x}
f(x)=1+x+x2+x3+x4+...=1−x1
推广
1
(
1
−
x
)
k
=
∑
i
=
0
∞
C
i
+
k
−
1
k
−
1
x
i
=
f
k
(
x
)
\frac{1}{(1-x)^{k}}=\sum_{i=0}^{\infty}C_{i+k-1}^{k-1}x^{i}=f^{k}(x)
(1−x)k1=∑i=0∞Ci+k−1k−1xi=fk(x)(相当于从k个
[
x
0
,
x
i
]
[x^{0},x^{i}]
[x0,xi]的集合中选择一些数,使得选出数的指数和为k的方案数)
斐波那契数列通项公式
f
(
x
)
=
x
+
x
2
+
2
x
3
+
3
x
4
+
.
.
.
f(x)=x+x^{2}+2x^{3}+3x^{4}+...
f(x)=x+x2+2x3+3x4+...
x
⋅
f
(
x
)
=
x
2
+
x
3
+
2
x
4
+
3
x
4
+
.
.
.
x\cdot f(x)=x^{2}+x^{3}+2x^{4}+3x^{4}+...
x⋅f(x)=x2+x3+2x4+3x4+...
f
(
x
)
−
x
⋅
f
(
x
)
=
x
+
x
3
+
x
4
+
.
.
.
=
x
+
x
2
⋅
f
(
x
)
f(x)-x\cdot f(x)=x+x^{3}+x^{4}+...=x+x^{2}\cdot f(x)
f(x)−x⋅f(x)=x+x3+x4+...=x+x2⋅f(x)
f
(
x
)
=
1
1
−
x
−
x
2
=
x
(
1
−
1
−
5
2
x
)
(
1
−
1
+
5
2
x
)
=
−
1
5
1
1
−
1
−
5
2
x
+
1
5
1
1
−
1
+
5
2
x
f(x)=\frac{1}{1-x-x^{2}}=\frac{x}{(1-\frac{1-\sqrt{5}}{2}x)(1-\frac{1+\sqrt{5}}{2}x)}=-\frac{1}{\sqrt{5}}\frac{1}{1-\frac{1-\sqrt{5}}{2}x}+\frac{1}{\sqrt{5}}\frac{1}{1-\frac{1+\sqrt{5}}{2}x}
f(x)=1−x−x21=(1−21−5x)(1−21+5x)x=−511−21−5x1+511−21+5x1
a
n
=
−
1
5
(
1
−
5
2
)
n
+
1
5
(
1
+
5
2
)
n
a_{n}=-\frac{1}{\sqrt{5}}(\frac{1-\sqrt{5}}{2})^{n}+\frac{1}{\sqrt{5}}(\frac{1+\sqrt{5}}{2})^{n}
an=−51(21−5)n+51(21+5)n
指数生成函数
e
x
=
∑
n
=
0
∞
x
n
n
!
=
1
+
x
+
x
2
2
!
+
.
.
.
+
x
n
n
!
+
.
.
.
e^{x}=\sum_{n=0}^{\infty}\frac{x^{n}}{n!}=1+x+\frac{x^{2}}{2!}+...+\frac{x^{n}}{n!}+...
ex=n=0∑∞n!xn=1+x+2!x2+...+n!xn+...
数列
h
0
,
h
1
,
h
2
,
.
.
.
,
h
n
h_{0},h_{1},h_{2},...,h_{n}
h0,h1,h2,...,hn的指数型生成函数为
g
(
e
)
(
x
)
=
∑
n
=
0
∞
h
n
x
n
n
!
=
h
0
+
h
1
x
+
h
2
x
2
2
!
+
.
.
.
+
h
n
x
n
n
!
+
.
.
.
g^{(e)}(x)=\sum_{n=0}^{\infty}h_{n}\frac{x^{n}}{n!}=h_{0}+h_{1}x+h_{2}\frac{x^{2}}{2!}+...+h_{n}\frac{x^{n}}{n!}+...
g(e)(x)=n=0∑∞hnn!xn=h0+h1x+h22!x2+...+hnn!xn+...
常用指数型生成函数闭形式
1
+
x
+
x
2
2
!
+
x
3
3
!
+
.
.
.
=
e
x
1+x+\frac{x^{2}}{2!}+\frac{x^{3}}{3!}+...=e^{x}
1+x+2!x2+3!x3+...=ex
1
−
x
+
x
2
2
!
−
x
3
3
!
+
.
.
.
=
e
−
x
1-x+\frac{x^{2}}{2!}-\frac{x^{3}}{3!}+...=e^{-x}
1−x+2!x2−3!x3+...=e−x
1
+
x
2
2
!
+
x
4
4
!
+
x
6
6
!
+
.
.
.
=
e
x
+
e
−
x
2
1+\frac{x^{2}}{2!}+\frac{x^{4}}{4!}+\frac{x^{6}}{6!}+...=\frac{e^{x}+e^{-x}}{2}
1+2!x2+4!x4+6!x6+...=2ex+e−x
x
+
x
3
3
!
+
x
5
5
!
+
x
7
7
!
+
.
.
.
=
e
x
−
e
−
x
2
x+\frac{x^{3}}{3!}+\frac{x^{5}}{5!}+\frac{x^{7}}{7!}+...=\frac{e^{x}-e^{-x}}{2}
x+3!x3+5!x5+7!x7+...=2ex−e−x
定理
假设有k种元素(元素内不区分),每一种分别有
n
1
,
n
2
,
n
3
,
.
.
.
,
n
k
n_{1},n_{2},n_{3},...,n_{k}
n1,n2,n3,...,nk个,
h
n
h_{n}
hn表示大小为n的排列有多少种情况,那么数列
h
0
,
h
1
,
h
2
,
.
.
.
,
h
n
h_{0},h_{1},h_{2},...,h{n}
h0,h1,h2,...,hn的指数型生成函数为:
g
(
e
)
(
x
)
=
f
n
1
(
x
)
f
n
2
(
x
)
.
.
.
f
n
k
(
x
)
g^{(e)}(x)=f_{n_{1}}(x)f_{n_{2}}(x)...f_{n_{k}}(x)
g(e)(x)=fn1(x)fn2(x)...fnk(x)
f
n
i
(
x
)
=
1
+
x
+
x
2
2
!
+
x
3
3
!
+
.
.
.
+
x
n
i
n
i
!
f_{n_{i}}(x)=1+x+\frac{x^{2}}{2!}+\frac{x^{3}}{3!}+...+\frac{x^{n_{i}}}{n_{i}!}
fni(x)=1+x+2!x2+3!x3+...+ni!xni
考虑把
g
(
e
)
(
x
)
g^{(e)}(x)
g(e)(x)展开,应该是如下形式:
x
m
1
m
1
!
⋅
x
m
2
m
2
!
⋅
.
.
.
⋅
x
m
k
m
k
!
=
x
m
1
+
m
2
+
.
.
.
+
m
k
m
1
!
⋅
m
2
!
⋅
.
.
.
⋅
m
k
!
\frac{x^{m_{1}}}{m_{1}!}\cdot \frac{x^{m_{2}}}{m_{2}!}\cdot...\cdot\frac{x^{m_{k}}}{m_{k}!}=\frac{x^{m_{1}+m_{2}+...+m_{k}}}{m_{1}!\cdot m_{2}!\cdot ... \cdot m_{k}!}
m1!xm1⋅m2!xm2⋅...⋅mk!xmk=m1!⋅m2!⋅...⋅mk!xm1+m2+...+mk
设
n
=
m
1
+
m
2
+
m
3
+
.
.
.
+
m
k
n=m_{1}+m_{2}+m_{3}+...+m_{k}
n=m1+m2+m3+...+mk,则:
x
m
1
+
m
2
+
.
.
.
+
m
k
m
1
!
⋅
m
2
!
⋅
.
.
.
⋅
m
k
!
=
x
n
m
1
!
⋅
m
2
!
⋅
.
.
.
⋅
m
k
!
=
n
!
⋅
x
n
m
1
!
⋅
m
2
!
⋅
.
.
.
⋅
m
k
!
⋅
n
!
=
n
!
m
1
!
⋅
m
2
!
⋅
.
.
.
⋅
m
k
!
x
n
n
!
\frac{x^{m_{1}+m_{2}+...+m_{k}}}{m_{1}!\cdot m_{2}!\cdot ... \cdot m_{k}!}=\frac{x^{n}}{m_{1}!\cdot m_{2}!\cdot ... \cdot m_{k}!}=\frac{n!\cdot x^{n}}{m_{1}!\cdot m_{2}!\cdot ... \cdot m_{k}!\cdot n!}=\frac{{n!}}{m_{1}!\cdot m_{2}!\cdot ... \cdot m_{k}!}\frac{x^{n}}{n!}
m1!⋅m2!⋅...⋅mk!xm1+m2+...+mk=m1!⋅m2!⋅...⋅mk!xn=m1!⋅m2!⋅...⋅mk!⋅n!n!⋅xn=m1!⋅m2!⋅...⋅mk!n!n!xn
对于
n
=
m
1
+
m
2
+
m
3
+
.
.
.
+
m
k
n=m_{1}+m_{2}+m_{3}+...+m_{k}
n=m1+m2+m3+...+mk,大小为
n
n
n的排列数就为:
∑
n
!
m
1
!
⋅
m
2
!
⋅
.
.
.
⋅
m
k
!
\sum \frac{{n!}}{m_{1}!\cdot m_{2}!\cdot ... \cdot m_{k}!}
∑m1!⋅m2!⋅...⋅mk!n!
证毕
指数生成函数例题
用红,白,蓝三种颜色给 1 ∗ n 1*n 1∗n的棋盘着色,要求红色的方格数是偶数,确定给这个棋盘着色的方法数
设 h n h_{n} hn表示这样的着色数,其中我们定义 h 0 = 1 h_{0}=1 h0=1
- 令 h n h_{n} hn为有3种颜色(红,白,蓝)的多重集合的n排列数,其中每一种颜色可以使用 ∞ \infty ∞次,且要求红色出现的次数是偶数。
- 我们能过得到一个生成函数:
g ( e ) ( x ) = ( 1 + x 2 2 ! + x 4 4 ! + . . . ) ( 1 + x 1 1 ! + x 2 2 ! + . . . ) ( 1 + x 1 1 ! + x 2 2 ! + . . . ) g^{(e)}(x)=(1+\frac{x^{2}}{2!}+\frac{x^{4}}{4!}+...)(1+\frac{x^{1}}{1!}+\frac{x^2}{2!}+...)(1+\frac{x^{1}}{1!}+\frac{x^2}{2!}+...) g(e)(x)=(1+2!x2+4!x4+...)(1+1!x1+2!x2+...)(1+1!x1+2!x2+...)
g ( e ) ( x ) = 1 2 ( e x + e − x ) ⋅ e 2 x = 1 2 ( e 3 x + e x ) g^{(e)}(x)=\frac{1}{2}(e^{x}+e^{-x})\cdot e^{2x}=\frac{1}{2}(e^{3x}+e^{x}) g(e)(x)=21(ex+e−x)⋅e2x=21(e3x+ex)
g ( e ) ( x ) = 1 2 ( ∑ n = 0 ∞ 3 n x n n ! + ∑ n = 0 ∞ x n n ! ) = 1 2 ∑ n = 0 ∞ ( 3 n + 1 ) x n n ! g^{(e)}(x)=\frac{1}{2}(\sum_{n=0}^{\infty}3^{n}\frac{x^{n}}{n!}+\sum_{n=0}^{\infty}\frac{x^{n}}{n!})=\frac{1}{2}\sum_{n=0}^{\infty}(3^{n}+1)\frac{x^{n}}{n!} g(e)(x)=21(n=0∑∞3nn!xn+n=0∑∞n!xn)=21n=0∑∞(3n+1)n!xn
h n = 3 n + 1 2 h_{n}=\frac{3^{n}+1}{2} hn=23n+1