1. 盒子放小球问题
n n n个小球, m m m个盒子。
1.1 n个小球有区别,m个盒子有区别
(1)允许空盒:每个球放到任意盒子里,总方案数
m
n
m^n
mn。
(2)不允许空盒:需满足
n
≥
m
≥
1
n \geq m\geq 1
n≥m≥1 ,
m
>
n
m>n
m>n时无解。其方案数及时看成m个盒子相同时的方案数,再乘以
m
!
m!
m!。答案即是
S
(
n
,
m
)
∗
m
!
S(n,m)*m!
S(n,m)∗m!。S代表第二类斯特林数。
1.2 n个小球有区别,m个盒子无区别
(1)允许空盒:假设放了k个盒,
m
≥
k
≥
1
m\geq k\geq 1
m≥k≥1。那么答案就是
∑
k
=
1
m
S
(
n
,
k
)
\sum_{k=1}^{m}S(n,k)
∑k=1mS(n,k)。
(2)不允许有空盒:
S
(
n
,
m
)
S(n,m)
S(n,m)。
1.3 n个小球无区别,m个盒子有区别
(1)允许空盒:
n
≥
m
≥
1
n\geq m\geq 1
n≥m≥1。“隔板法”。假设不允许有空盒,每一个盒里都先放一个小球,这样小球共有
n
+
m
n+m
n+m个,然后插板,插板的方案数为
C
n
+
m
−
1
n
−
1
C^{n-1}_{n+m-1}
Cn+m−1n−1。
(2)不允许空盒:
n
≥
m
≥
1
n\geq m\geq 1
n≥m≥1。“隔板法”。方案数
C
n
−
1
m
−
1
C^{m-1}_{n-1}
Cn−1m−1。
1.4 n个小球无区别,m个盒子无区别
(1)允许空盒:划分数问题。
d
p
[
i
]
[
j
]
dp[i][j]
dp[i][j]表示i个球,j个盒子的方案数。转移方程为
d
p
[
i
]
[
j
]
=
d
p
[
i
−
j
]
[
j
]
+
d
p
[
i
]
[
j
−
1
]
(
i
≥
j
)
dp[i][j]=dp[i-j][j]+dp[i][j-1] (i\geq j)
dp[i][j]=dp[i−j][j]+dp[i][j−1](i≥j)
d
p
[
i
]
[
j
]
=
d
p
[
i
]
[
j
−
1
]
(
i
<
j
)
dp[i][j]=dp[i][j-1] (i< j)
dp[i][j]=dp[i][j−1](i<j)
如果
n
<
m
n<m
n<m,答案为
d
p
[
n
]
[
n
]
dp[n][n]
dp[n][n],否则为
d
p
[
n
]
[
m
]
dp[n][m]
dp[n][m]。
(2)不允许空盒:
n
≥
m
≥
1
n\geq m\geq 1
n≥m≥1。转成上情况的
n
−
m
n-m
n−m个小球,
m
m
m个盒子。
2. 计数原理与计数公式
2.1 可重复的排列与组合
2.1.1 可重复的排列
从n个不同元素中取m个元素(同一元素可以重复取出),按照一定的顺序排成一列。排列的个数为 n m n^m nm。
2.1.2 可重复的组合
从n个不同元素中取m个元素(同一元素可以重复取出),并成一组。组合的个数为
C
n
+
m
−
1
m
C^{m}_{n+m-1}
Cn+m−1m。
【证明】
1
,
2
,
.
.
.
,
n
1,2,...,n
1,2,...,n表示n个不同元素。从中取m个可以表示成:
{
i
1
,
i
2
,
.
.
.
,
i
m
}
(
1
≤
i
1
≤
i
2
≤
.
.
.
≤
i
m
≤
n
)
\{i_1,i_2,...,i_m\} (1\leq i_1\leq i_2 \leq ... \leq i_m \leq n)
{i1,i2,...,im}(1≤i1≤i2≤...≤im≤n)
令
j
k
=
i
k
+
(
k
−
1
)
j_k = i_k + (k-1)
jk=ik+(k−1),即:
j
1
=
i
1
j
2
=
i
2
+
1
j
3
=
i
3
+
2
.
.
.
j
m
=
i
m
+
(
m
−
1
)
\begin{aligned}j_1 &= i_1\\ j_2 &= i_2+ 1\\ j_3 &= i_3 + 2\\ ...\\ j_m &=i_m+(m-1) \end{aligned}
j1j2j3...jm=i1=i2+1=i3+2=im+(m−1)
可以得到组合
{
j
1
,
j
2
,
.
.
.
,
j
m
}
(
1
≤
j
1
<
j
2
<
.
.
.
<
j
m
≤
n
−
m
+
1
)
\{j_1,j_2,...,j_m\} (1\leq j_1< j_2 < ... <j_m \leq n-m+1)
{j1,j2,...,jm}(1≤j1<j2<...<jm≤n−m+1)
这样就相当于在
n
+
m
−
1
n+m-1
n+m−1个元素中取
m
m
m个不相同的元素,作为一组。
因此即是
C
n
+
m
−
1
m
C_{n+m-1}^{m}
Cn+m−1m。
2.1.3 不全相异元素的全排列
n个元素中,分别有
n
1
,
n
2
,
.
.
.
,
n
k
n_1,n_2,...,n_k
n1,n2,...,nk个元素相同,且
n
1
+
n
2
+
.
.
.
+
n
k
=
n
n_1+n_2+...+n_k=n
n1+n2+...+nk=n,则称这n个元素的全排列为不全相异元素的全排列,个数为
n
!
n
1
!
n
2
!
.
.
.
n
k
!
\frac{n!}{n_1!n_2!...n_k!}
n1!n2!...nk!n!
2.1.4 多组组合
n个相异的元素分为
k
(
k
≤
n
)
k(k\leq n)
k(k≤n)个按照一定顺序排列的组,其中第
i
i
i组有
n
i
n_i
ni个元素
(
i
=
1
,
2
,
.
.
.
,
k
)
(
n
1
+
n
2
+
.
.
.
+
n
k
=
n
)
(i=1,2,...,k)(n_1+n_2+...+n_k=n)
(i=1,2,...,k)(n1+n2+...+nk=n)。不同的分组方法为
n
!
n
1
!
n
2
!
.
.
.
n
k
!
\frac{n!}{n_1!n_2!...n_k!}
n1!n2!...nk!n!
【例】
从
n
(
n
≥
6
)
n(n\geq 6)
n(n≥6)个选手中选3对选手参加双打,问共有多少种选法。
答案为(注意不考虑组的顺序)
C
n
6
∗
6
!
2
!
∗
2
!
∗
2
!
3
!
\frac{C_{n}^{6}*\frac{6!}{2!*2!*2!}}{3!}
3!Cn6∗2!∗2!∗2!6!
2.2 相异元素的圆排列和项链数
2.2.1 圆排列
n个元素不分首尾排成一圈,成为n个相异元素的圆排列。排列的种数为 ( n − 1 ) ! (n-1)! (n−1)!。
2.2.2 项链数
将n粒不相同的珠子,穿成一副项链,得到的不同的项链数。
由于项链顺时针和逆时针都是相同的,所以个数即是圆排列的一半。
{
1
,
n
=
1
或
n
=
2
1
2
∗
(
n
−
1
)
!
,
n
≥
3
\left\{ \begin{aligned} &1,n = 1或n=2\\ &\frac{1}{2}*(n-1)!,n\geq3 \end{aligned} \right.
⎩⎨⎧1,n=1或n=221∗(n−1)!,n≥3
2.3 错排问题
错排递推式。
D
(
n
)
D(n)
D(n)代表
n
n
n个数的错排公式,则
D
(
n
)
=
(
n
−
1
)
∗
[
D
(
n
−
1
)
+
D
(
n
−
2
)
]
D(n) = (n-1)*[D(n-1)+D(n-2)]
D(n)=(n−1)∗[D(n−1)+D(n−2)]
错排公式
D
(
n
)
=
n
!
(
1
−
1
1
!
+
1
2
!
−
1
3
!
+
.
.
.
+
(
−
1
)
n
n
!
)
D(n) = n!(1-\frac{1}{1!}+\frac{1}{2!}-\frac{1}{3!}+...+\frac{(-1)^n}{n!})
D(n)=n!(1−1!1+2!1−3!1+...+n!(−1)n)
2.4 组合数常用公式
C
n
2
=
n
∗
(
n
−
1
)
2
C
n
3
=
n
∗
(
n
−
1
)
(
n
−
2
)
6
C
n
m
=
C
n
−
1
m
−
1
+
C
n
−
1
m
m
∗
C
n
m
=
n
∗
C
n
−
1
m
−
1
C
n
0
+
C
n
1
+
.
.
.
+
C
n
n
=
2
n
1
C
n
1
+
2
C
n
2
+
.
.
.
+
n
C
n
n
=
n
2
n
−
1
1
2
C
n
1
+
2
2
C
n
2
+
.
.
.
+
n
2
C
n
n
=
n
(
n
+
1
)
2
n
−
2
C
n
1
1
−
C
n
2
2
+
C
n
3
3
+
.
.
.
+
(
−
1
)
n
−
1
C
n
n
n
=
1
+
1
2
+
1
3
+
.
.
.
+
1
n
(
C
n
0
)
2
+
(
C
n
1
)
2
+
(
C
n
2
)
2
+
.
.
.
+
(
C
n
n
)
2
=
C
2
n
n
\begin{aligned} &C_{n}^{2} = \frac{n*(n-1)}{2}\\ &\\ &C_{n}^{3}=\frac{n*(n-1)(n-2)}{6}\\ &\\ &C_{n}^{m}=C_{n-1}^{m-1}+C_{n-1}^{m}\\ &\\ &m*C_{n}^{m} = n*C_{n-1}^{m-1}\\ &\\ &C_n^0+C_n^1+...+C_n^n =2^n\\ &\\ &1C_n^1+2C_n^2+...+nC_n^n=n2^{n-1}\\ &\\ &1^2C_n^1+2^2C_n^2+...+n^2C_n^n=n(n+1)2^{n-2}\\ &\\ &\frac{C_n^1}{1}-\frac{C_n^2}{2}+\frac{C_n^3}{3}+...+(-1)^{n-1}\frac{C_n^n}{n}=1+\frac{1}{2}+\frac{1}{3}+...+\frac{1}{n}\\ &\\ &(C_n^0)^2+(C_n^1)^2+(C_n^2)^2+...+(C_n^n)^2=C_{2n}^n\\ \end{aligned}
Cn2=2n∗(n−1)Cn3=6n∗(n−1)(n−2)Cnm=Cn−1m−1+Cn−1mm∗Cnm=n∗Cn−1m−1Cn0+Cn1+...+Cnn=2n1Cn1+2Cn2+...+nCnn=n2n−112Cn1+22Cn2+...+n2Cnn=n(n+1)2n−21Cn1−2Cn2+3Cn3+...+(−1)n−1nCnn=1+21+31+...+n1(Cn0)2+(Cn1)2+(Cn2)2+...+(Cnn)2=C2nn
范德蒙恒等式:
∑
i
=
0
k
C
n
i
C
m
k
−
i
=
C
n
+
m
k
\sum_{i=0}^{k}C_n^iC_m^{k-i}=C_{n+m}^k
i=0∑kCniCmk−i=Cn+mk
经验式(link https://www.cnblogs.com/qrsikno/p/10170523.html):
∑
i
=
0
n
C
n
i
∗
r
i
=
(
r
+
1
)
n
(
广
义
二
项
式
定
理
)
∑
i
=
0
n
i
∗
C
n
i
=
n
∗
2
n
−
1
∑
i
=
0
n
C
i
k
=
C
n
+
1
k
+
1
∑
i
=
0
k
C
n
+
i
i
=
C
n
+
k
+
1
k
\begin{aligned} &\sum_{i=0}^{n}C_n^i*r^i=(r+1)^n(广义二项式定理)\\ &\\ &\sum_{i=0}^{n}i*C_n^i=n*2^{n-1}\\&\\ &\sum_{i=0}^{n}C_i^k=C_{n+1}^{k+1}\\&\\ &\sum_{i=0}^{k}C_{n+i}^i=C_{n+k+1}^{k}\\ \end{aligned}
i=0∑nCni∗ri=(r+1)n(广义二项式定理)i=0∑ni∗Cni=n∗2n−1i=0∑nCik=Cn+1k+1i=0∑kCn+ii=Cn+k+1k
3. 抽屉原理与平均值原理
3.1 抽屉原理
3.1.1 第一抽屉原理
如果将m个物件放入n个抽屉内,那么必有一个抽屉内至少有
[
m
−
1
n
]
+
1
[\frac{m-1}{n}]+1
[nm−1]+1个物件。
【推广】
如果将
m
1
+
m
2
+
.
.
.
+
m
n
+
1
m_1+m_2+...+m_n+1
m1+m2+...+mn+1个物件放入n个抽屉内,那么或者第一个抽屉内至少有
m
1
+
1
m_1+1
m1+1个物件,或者第二个抽屉内至少有
m
2
+
1
m_2+1
m2+1个物件……或者第n个抽屉内至少有
m
n
+
1
m_n+1
mn+1个物件。
3.1.2 第二抽屉原理
如果将m个物件放入n个抽屉内,那么必有一个抽屉内至多有
[
m
n
]
[\frac{m}{n}]
[nm]个物件。
【推广】
如果将
m
1
+
m
2
+
.
.
.
+
m
n
−
1
m_1+m_2+...+m_n-1
m1+m2+...+mn−1个物件放入n个抽屉内,那么或者第一个抽屉内至多有
m
1
−
1
m_1-1
m1−1个物件,或者第二个抽屉内至多有
m
2
−
1
m_2-1
m2−1个物件……或者第n个抽屉内至多有
m
n
−
1
m_n-1
mn−1个物件。
3.2 平均值原理
(1)设
a
1
,
a
2
,
.
.
.
,
a
n
a_1,a_2,...,a_n
a1,a2,...,an是实数,
A
=
1
n
(
a
1
+
a
2
+
.
.
.
+
a
n
)
A =\frac{1}{n}(a_1+a_2+...+a_n)
A=n1(a1+a2+...+an),则
a
1
,
a
2
,
.
.
.
,
a
n
a_1,a_2,...,a_n
a1,a2,...,an中必有一个数不小于A,也有一个数不大于A。
(2)设
a
1
,
a
2
,
.
.
.
,
a
n
a_1,a_2,...,a_n
a1,a2,...,an是实数,
G
=
1
n
a
1
a
2
.
.
.
a
n
n
G =\frac{1}{n}\sqrt[n]{a_1a_2...a_n}
G=n1na1a2...an,则
a
1
,
a
2
,
.
.
.
,
a
n
a_1,a_2,...,a_n
a1,a2,...,an中必有一个数不小于G,也有一个数不大于G。
4. 生成函数
生成函数的定义:
实数序列
a
0
,
a
1
,
.
.
.
,
a
k
,
.
.
.
a_0,a_1,...,a_k,...
a0,a1,...,ak,...的生成函数是无穷级数
G
(
x
)
=
a
0
+
a
2
x
+
.
.
.
+
a
k
x
k
+
.
.
.
=
∑
k
=
0
∞
a
k
x
k
G(x)=a_0+a_2x+...+a_kx^k+...=\sum_{k=0}^{\infty}a_kx^k
G(x)=a0+a2x+...+akxk+...=k=0∑∞akxk
a
k
{a_k}
ak的普通生成函数。
广义二项式系数:
(
u
k
)
=
{
u
(
u
−
1
)
(
u
−
2
)
.
.
.
(
u
−
k
+
1
)
/
k
!
,
k
>
0
1
,
k
=
0
\dbinom{u}{k}=\left \{ \begin{aligned}&u(u-1)(u-2)...(u-k+1)/k!,&k>0\\ &1,&k=0 \end{aligned}\right.
(ku)={u(u−1)(u−2)...(u−k+1)/k!,1,k>0k=0
【例】
(
1
/
2
3
)
=
(
1
/
2
)
(
1
/
2
−
1
)
(
1
/
2
−
2
)
3
!
=
(
1
/
2
)
(
−
1
/
2
)
(
−
3
/
2
)
6
=
1
/
16
\begin{aligned}\dbinom{1/2}{3}&=\frac{(1/2)(1/2-1)(1/2-2)}{3!}\\ &=\frac{(1/2)(-1/2)(-3/2)}{6}\\ &=1/16 \end{aligned}
(31/2)=3!(1/2)(1/2−1)(1/2−2)=6(1/2)(−1/2)(−3/2)=1/16
设
x
x
x是实数,
∣
x
∣
<
1
|x|<1
∣x∣<1,
u
u
u是实数,那么
(
1
+
x
)
u
=
∑
k
=
0
∞
(
u
k
)
x
k
(1+x)^u=\sum_{k=0}^{\infty}\dbinom{u}{k}x^k
(1+x)u=k=0∑∞(ku)xk
4.1 常用生成函数
1 − x n + 1 1 − x = ∑ k = 0 n x k 1 1 − a x = ∑ k = 0 ∞ a k x k 1 ( 1 − x ) 2 = ∑ k = 0 ∞ ( k + 1 ) x k 1 ( 1 − x ) n = ∑ k = 0 ∞ C n + k − 1 k x k 1 ( 1 + x ) n = ∑ k = 0 ∞ C n + k − 1 k ( − 1 ) k x k \begin{aligned} &\frac{1-x^{n+1}}{1-x}=\sum_{k=0}^{n}x^k\\ &\\ &\frac{1}{1-ax}=\sum_{k=0}^{\infty}a^kx^k\\ &\\ &\frac{1}{(1-x)^2}=\sum_{k=0}^{\infty}(k+1)x^k\\ &\\ &\frac{1}{(1-x)^n}=\sum_{k=0}^{\infty}C_{n+k-1}^{k}x^k\\ &\\ &\frac{1}{(1+x)^n}=\sum_{k=0}^{\infty}C_{n+k-1}^{k}(-1)^kx^k\\ \end{aligned} 1−x1−xn+1=k=0∑nxk1−ax1=k=0∑∞akxk(1−x)21=k=0∑∞(k+1)xk(1−x)n1=k=0∑∞Cn+k−1kxk(1+x)n1=k=0∑∞Cn+k−1k(−1)kxk
4.2 计数问题
5. 特殊计数序列
5.1 Catalan数列
前几项: 1 , 1 , 2 , 5 , 14 , 42 , 132 , 429 , 1430 , 4862 , 16796 , 58786 , 208012 , . . . . . . 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, ...... 1,1,2,5,14,42,132,429,1430,4862,16796,58786,208012,......即 c [ 0 ] = 1 , c [ 1 ] = 1 , c [ 2 ] = 2... c[0]=1,c[1]=1,c[2]=2... c[0]=1,c[1]=1,c[2]=2...
递 推 式 1 : f [ n ] = ∑ i = 0 n − 1 f [ i ] ∗ f [ n − i − 1 ] 递 推 式 2 : f [ n ] = 4 n − 2 n + 1 f [ n − 1 ] 组 合 式 1 : f [ n ] = C 2 n n n + 1 组 合 式 2 : f [ n ] = C 2 n n − C 2 n n − 1 \begin{aligned} &递推式1:f[n]=\sum_{i=0}^{n-1}f[i]*f[n-i-1]\\ &\\ &递推式2:f[n]=\frac{4n-2}{n+1}f[n-1]\\ &\\ &组合式1:f[n]=\frac{C_{2n}^{n}}{n+1}\\ &\\ &组合式2:f[n] = C_{2n}^{n}-C_{2n}^{n-1} \end{aligned} 递推式1:f[n]=i=0∑n−1f[i]∗f[n−i−1]递推式2:f[n]=n+14n−2f[n−1]组合式1:f[n]=n+1C2nn组合式2:f[n]=C2nn−C2nn−1
应用:
- 二叉树计数1:已知二叉树有 n n n个节点,能够构成 C n C_{n} Cn种不同的二叉树。(二叉搜索树)
- 二叉树计数2:已知二叉树的叶子 n n n个,能够构成 C n − 1 C_{n-1} Cn−1种不同的二叉树。(二叉搜索树)
- 括号匹配数:一个合法的表达式由()包围,()可以嵌套和连接,给出 n n n对括号,可以组成的合法表达式的个数为 C n C_{n} Cn。
- 划分问题:将一个凸 n + 2 n+2 n+2多边形区域分成三角形区域的方法数为 C n C_{n} Cn。
- 出栈问题1:一个栈的进栈序列为 1 , 2 , 3 , . . n 1,2,3,..n 1,2,3,..n,不同的出栈序列有 C n C_{n} Cn种。
- 出栈问题2:有2n个人排成一行进入剧场。入场费5元。其中只有n个人有一张5元钞票,另外n人只有10元钞票,剧院无其它钞票,问有多少种方法使得只要有10元的人买票,售票处就有5元的钞票找零。5元的相当于入栈,10元的相当于出栈,转化成上问题。
- 路径问题:在 n ∗ n n*n n∗n的方格地图中,从一个角到另外一个角,不跨越对角线的路径数有 C n C_{n} Cn种。
- 握手问题: 2 n 2n 2n个人均匀坐在一个圆桌边上,某个时刻所有人同时与另一个人握手,要求手之间不能交叉,共有 C n C_{n} Cn种握手方法。
5.2 Fibonacci数列
通项公式:
F
n
=
1
5
[
(
1
+
5
2
)
n
−
(
1
−
5
2
)
n
]
F_n=\frac{1}{\sqrt{5}}[(\frac{1+\sqrt{5}}{2})^n-(\frac{1-\sqrt{5}}{2})^n]
Fn=51[(21+5)n−(21−5)n]
递推式:
F
n
=
F
n
−
1
+
F
n
−
2
F_n=F_{n-1}+F_{n-2}
Fn=Fn−1+Fn−2
性质:
F
1
+
F
1
+
F
2
+
F
3
+
.
.
.
+
F
n
=
F
n
+
2
−
1
F
1
+
2
F
2
+
3
F
3
+
.
.
.
+
n
F
n
=
n
F
n
+
2
−
F
n
+
3
+
2
F
1
+
F
3
+
F
5
+
.
.
.
+
F
2
n
−
1
=
F
2
n
F
2
+
F
4
+
F
6
+
.
.
.
+
F
2
n
=
F
2
n
+
1
−
1
F
1
2
+
F
2
2
+
F
3
2
+
.
.
.
+
F
n
2
=
F
n
F
n
+
1
F
n
−
1
F
n
+
1
−
F
n
2
=
(
−
1
)
n
\begin{aligned}&F_1+F_1+F_2+F_3+...+F_n=F_{n+2}-1\\ &\\ &F_1+2F_2+3F_3+...+nF_n=nF_{n+2}-F_{n+3}+2\\ &\\ &F_1+F_3+F_5+...+F_{2n-1}=F_{2n}\\ &\\ &F_2+F_4+F_6+...+F_{2n}=F_{2n+1}-1\\ &\\ &F_1^2+F_2^2+F_3^2+...+F_n^2=F_nF_{n+1}\\ &\\ &F_{n-1}F_{n+1}-F_n^2=(-1)^n \end{aligned}
F1+F1+F2+F3+...+Fn=Fn+2−1F1+2F2+3F3+...+nFn=nFn+2−Fn+3+2F1+F3+F5+...+F2n−1=F2nF2+F4+F6+...+F2n=F2n+1−1F12+F22+F32+...+Fn2=FnFn+1Fn−1Fn+1−Fn2=(−1)n
定理:
F
n
F
m
+
F
m
−
1
F
n
−
1
=
F
m
+
n
−
1
F
m
F
n
+
1
+
F
m
−
1
F
n
=
F
m
+
n
m
=
n
时
,
F
2
n
−
1
=
F
n
2
+
F
n
−
1
2
F
2
n
=
(
F
n
−
1
+
F
n
+
1
)
F
n
=
(
2
F
n
−
1
+
F
n
)
F
n
F
n
整
除
F
m
当
且
仅
当
n
整
除
m
,
其
中
n
≥
3
任
意
连
续
三
个
F
i
b
o
n
a
c
c
i
数
两
两
互
素
。
\begin{aligned} &F_nF_m+F_{m-1}F_{n-1}=F_{m+n-1}\\ &\\ &F_mF_{n+1}+F_{m-1}F_n=F_{m+n}\\ &\\ &m=n时,\\ &F_{2n-1}=F_n^2+F_{n-1}^2\\ &\\ &F_{2n}=(F_{n-1}+F_{n+1})F_n=(2F_{n-1}+F_n)F_n\\ &\\ &F_n整除F_m当且仅当n整除m,其中n\geq3\\ &\\ &任意连续三个Fibonacci数两两互素。 \end{aligned}
FnFm+Fm−1Fn−1=Fm+n−1FmFn+1+Fm−1Fn=Fm+nm=n时,F2n−1=Fn2+Fn−12F2n=(Fn−1+Fn+1)Fn=(2Fn−1+Fn)FnFn整除Fm当且仅当n整除m,其中n≥3任意连续三个Fibonacci数两两互素。
5.3 Lucas数列
定义:
L
n
=
{
2
,
n
=
1
1
,
n
=
2
L
n
−
1
+
L
n
−
2
,
n
≥
3
L_n= \left\{\begin{aligned}&2,&n=1\\ &1,&n=2\\ &L_{n-1}+L_{n-2},&n\geq3 \end{aligned} \right.
Ln=⎩⎪⎨⎪⎧2,1,Ln−1+Ln−2,n=1n=2n≥3
通项公式:
L
n
=
(
1
+
5
2
)
n
+
(
1
−
5
2
)
n
L_n=(\frac{1+\sqrt{5}}{2})^n+(\frac{1-\sqrt{5}}{2})^n
Ln=(21+5)n+(21−5)n
与Fibonacci数的关系:
F
2
n
=
L
n
F
n
L
n
=
F
n
−
1
+
F
n
+
1
F
n
=
L
n
−
1
+
L
n
+
1
5
L
n
2
=
5
F
n
2
+
4
(
−
1
)
n
\begin{aligned} &F_{2n}=L_nF_n\\ &\\ &L_n=F_{n-1}+F_{n+1}\\ &\\ &F_n=\frac{L_{n-1}+L_{n+1}}{5}\\ &\\ &L_n^2=5F_n^2+4(-1)^n \end{aligned}
F2n=LnFnLn=Fn−1+Fn+1Fn=5Ln−1+Ln+1Ln2=5Fn2+4(−1)n
5.4 Stirling数
5.4.1 第一类Stirling数
S
1
(
n
,
m
)
S1(n,m)
S1(n,m)表示的是将
n
n
n个不同元素构成
m
m
m个圆排列的数目。
递推式:
S
1
(
n
,
m
)
=
(
n
−
1
)
∗
S
1
(
n
−
1
,
m
)
+
S
1
(
n
−
1
,
m
−
1
)
(
n
>
1
,
m
>
1
)
S1(n,m)=(n-1)*S1(n-1,m)+S1(n-1,m-1)(n>1,m>1)
S1(n,m)=(n−1)∗S1(n−1,m)+S1(n−1,m−1)(n>1,m>1)
边界条件:
S
1
(
0
,
0
)
=
1
,
S
1
(
n
,
0
)
=
0
S
1
(
n
,
n
)
=
1
\begin{aligned} &S1(0,0)=1,S1(n,0) = 0\\ &S1(n,n) = 1 \end{aligned}
S1(0,0)=1,S1(n,0)=0S1(n,n)=1
性质:
∑
k
=
0
n
S
1
(
n
,
k
)
=
n
!
\sum_{k=0}^{n}S1(n,k)=n!
k=0∑nS1(n,k)=n!
【例】
n
n
n个仓库,
2
n
2n
2n把钥匙,
n
n
n 位官员。如果把
n
n
n位官员分成
m
m
m个不同的部,部中的官员数量与管理的仓库数量一致。有多少种方案使得所有同部的官员可以打开所有本部管理的仓库,而无法打开其他管理的仓库。(
n
n
n把钥匙放到仓库,
n
n
n把钥匙分给官员)
方案数即为
S
1
(
n
,
m
)
n
!
S1(n,m)n!
S1(n,m)n!。
前面的是放到仓库里的方案数,后面说官员的分配方案。
5.4.2 第二类Stirling数
S
2
(
n
,
m
)
S2(n,m)
S2(n,m)表示的是把
n
n
n个不同元素划分到
m
m
m个集合的方案数。
递推式:
S
2
(
n
,
m
)
=
m
∗
S
2
(
n
−
1
,
m
)
+
S
2
(
n
−
1
,
m
−
1
)
(
1
≤
m
≤
n
−
1
)
S2(n,m)=m*S2(n-1,m)+S2(n-1,m-1)(1\leq m\leq n-1)
S2(n,m)=m∗S2(n−1,m)+S2(n−1,m−1)(1≤m≤n−1)
边界条件:
S
2
(
n
,
0
)
=
0
,
S
2
(
n
,
1
)
=
1
S
2
(
n
,
n
)
=
1
\begin{aligned} &S2(n,0)=0,S2(n,1)=1\\ &S2(n,n)=1 \end{aligned}
S2(n,0)=0,S2(n,1)=1S2(n,n)=1