1.斐波那契数列
P.S.:这里首项下标为 1
递推式: F i = F i − 1 + F i − 2 , F 1 = F 2 = 1 F_i=F_{i-1}+F_{i-2},F_1=F_2=1 Fi=Fi−1+Fi−2,F1=F2=1
性质:
1.
∑
i
=
1
n
F
i
=
F
n
+
2
−
1
1.\sum^{n}_{i=1}F_{i}=F_{n+2}-1
1.∑i=1nFi=Fn+2−1
2. ∑ i = 1 n F i 2 = F n F n + 1 2.\sum^{n}_{i=1}F_i^2=F_n\ F_{n+1} 2.∑i=1nFi2=Fn Fn+1
3. ∑ i = 1 n i F i = n F n + 2 − F n + 3 + 2 3.\sum_{i=1}^{n}i\ F_i=n\ F_{n+2}-F_{n+3}+2 3.∑i=1ni Fi=n Fn+2−Fn+3+2
4. F n + m = F n F m − 1 + F m F n + 1 4.F_{n+m}=F_n\ F_{m-1}+F_{m}\ F_{n+1} 4.Fn+m=Fn Fm−1+Fm Fn+1
5. F 2 n / F n = F n − 1 + F n + 1 5.F_{2n}/F_{n}=F_{n-1}+F_{n+1} 5.F2n/Fn=Fn−1+Fn+1
6. g c d ( F i , F i + 1 ) = 1 6.gcd(F_i,F_{i+1})=1 6.gcd(Fi,Fi+1)=1
7. g c d ( F n , F m ) = F g c d ( n , m ) 7.gcd(F_n,F_m)=F_{gcd(n,m)} 7.gcd(Fn,Fm)=Fgcd(n,m)
8. 8. 8.斐波那契数列的第n+2项代表了集合 1 , 2 , . . . n {1,2,...n} 1,2,...n中所有不包含相邻正整数的子集的个数.
2.卡特兰数
P.S. 这里首项下标为0
递推关系:
C
n
=
∑
i
=
0
n
−
1
C
i
C
n
−
i
−
1
,
C
0
=
C
1
=
1
C_n=\sum_{i=0}^{n-1} C_iC_{n-i-1},C_0=C_1=1
Cn=i=0∑n−1CiCn−i−1,C0=C1=1
常用递推关系:
C
n
=
C
n
−
1
∗
(
4
∗
n
−
2
)
n
+
1
C_n=\frac{C_{n-1}*(4*n-2)}{n+1}
Cn=n+1Cn−1∗(4∗n−2)
另类递推式:
C
n
=
(
2
n
n
)
n
+
1
C_n=\frac{2n\choose n}{n+1}
Cn=n+1(n2n)
C
n
=
(
2
n
n
)
−
(
2
n
n
−
1
)
C_n={2n \choose n}-{ 2n \choose n-1}
Cn=(n2n)−(n−12n)
应用:
- n 个元素的不同的出栈序列个数
- n 个元素的排列中最长下降子序列不超过 2 的排列个数
- 凸 n+2 边形的三角形划分数
- 球迷购票问题
- n 对括号正确匹配的排列方案数
- 链乘的括号化方案数
3.斯特林数
1.第一类斯特林数
含义: n 个人坐 m 张圆桌的方案数
递推式:
[
n
m
]
=
[
n
−
1
m
]
∗
(
n
−
1
)
+
[
n
−
1
m
−
1
]
\left [ \begin{matrix}n \\ m\end{matrix}\right ]=\left [ \begin{matrix}n-1 \\ m\end{matrix}\right ]*(n-1)+\left [ \begin{matrix}n-1 \\ m-1\end{matrix}\right ]
[nm]=[n−1m]∗(n−1)+[n−1m−1]
理解:新来一个人的时候,要么坐在前面 n-1 个人的某一边(坐在一个地方必定同时是一个人的左边和一个人的右边) , 要么自己新坐一桌
有符号与无符号第一类斯特林数的关系:
(
−
1
)
n
−
m
[
n
m
]
u
=
[
n
m
]
s
\large (-1)^{n-m}\left [ \begin{matrix}n \\ m\end{matrix}\right ]_u =\left [ \begin{matrix}n \\ m\end{matrix}\right ]_s
(−1)n−m[nm]u=[nm]s
1.无符号第一类斯特林数与上升幂/下降幂的关系
考虑:
x
n
‾
=
x
∗
(
x
+
1
)
∗
(
x
+
2
)
∗
(
x
+
3
)
∗
.
.
.
(
x
+
n
−
1
)
x^{\overline n}=x*(x+1)*(x+2)*(x+3)*...(x+n-1)
xn=x∗(x+1)∗(x+2)∗(x+3)∗...(x+n−1)
从生成函数方面考虑其含义,是从
[
0
,
n
−
1
]
[0,n-1]
[0,n−1] 中选出任意多个数乘起来的和,其中第
m
m
m 次方项系数表示选了
n
−
m
n-m
n−m 个数(剩下 m 个数)时的和 , 特别的 , 一个数也不选乘积为 1
设
f
(
n
,
m
)
f(n,m)
f(n,m)表示从
[
1
,
n
]
[1,n]
[1,n] 里面选数 , 剩下
m
m
m 个数时的和,容易得到递推式:
f
(
n
,
m
)
=
f
(
n
−
1
,
m
)
+
f
(
n
,
m
)
∗
(
n
−
1
)
f(n,m)=f(n-1,m)+f(n,m)*(n-1)
f(n,m)=f(n−1,m)+f(n,m)∗(n−1)
看
n
−
1
n-1
n−1 选不选就能够得出来 , 边界:
f
(
0
,
0
)
=
1
f(0,0)=1
f(0,0)=1
这个递推式和第一类斯特林数的式子长的一模一样,所以:
f
(
n
,
m
)
=
[
n
m
]
u
f(n,m)=\left [ \begin{matrix}n \\ m\end{matrix}\right ]_u
f(n,m)=[nm]u(无符号)
那么展开上升幂得到:
x
n
‾
=
∑
i
=
0
n
[
n
i
]
u
x
i
\large x^{\overline n}=\sum_{i=0}^n \left [ \begin{matrix}n \\ i\end{matrix}\right ]_ux^i
xn=i=0∑n[ni]uxi
是不是和二项式定理很像
对于下降幂:
似乎可以理解为通过上升幂容斥得来:
x
n
‾
=
∑
i
=
0
n
(
−
1
)
n
−
i
[
n
i
]
u
x
i
\large x^{\underline n}=\sum_{i=0}^n (-1)^{n-i}\left [ \begin{matrix}n \\ i\end{matrix}\right ]_u x^i
xn=i=0∑n(−1)n−i[ni]uxi
其实也可以直接写成有符号第一类斯特林数:
x
n
‾
=
∑
i
=
0
n
[
n
i
]
s
x
i
\large x^{\underline n}=\sum_{i=0}^n \left [ \begin{matrix}n \\ i\end{matrix}\right ]_s x^i
xn=i=0∑n[ni]sxi
2.第二类斯特林数
含义: 把 n 个有标号的球放入 m 个无标号的盒子里 , 不允许空盒的方案数
递推式:
{
n
m
}
=
m
∗
{
n
−
1
m
}
+
{
n
−
1
m
−
1
}
\left \{ \begin{matrix}n \\ m\end{matrix}\right \} =m*\left \{ \begin{matrix}n-1 \\ m\end{matrix}\right \} +\left \{ \begin{matrix}n-1 \\ m-1\end{matrix}\right \}
{nm}=m∗{n−1m}+{n−1m−1}
理解: 新来一个球 , 要么放入原有的盒子,要么放入一个新的盒子
常用公式(推导略):
1.通项公式:
{
n
m
}
=
1
m
!
∗
∑
i
=
0
m
(
−
1
)
i
∗
(
m
i
)
∗
(
m
−
i
)
n
\large \left \{ \begin{matrix}n \\ m\end{matrix}\right \} =\frac{1}{m!}*\sum_{i=0}^m (-1)^i*{m\choose i}*(m-i)^n
{nm}=m!1∗i=0∑m(−1)i∗(im)∗(m−i)n
拆开组合数可以发现是卷积的形式,可以用 N T T NTT NTT 预处理 n n n个球的时候的第二类斯特林数
2.斯特林展开
x n = ∑ j = 0 x ( x j ) ∗ ( j ! ) ∗ { n j } x^n=\sum_{j=0}^x {x \choose j}*(j!)*\left \{ \begin{matrix}n \\ j\end{matrix}\right \} xn=j=0∑x(jx)∗(j!)∗{nj}
把第二类斯特林数通项公式用二项式反演定理反演回去即可
由于当
j
>
n
j>n
j>n时,原式子的贡献为0,所以其实只用枚举
j
j
j 到
m
i
n
(
n
,
x
)
min(n,x)
min(n,x)
可以写成下降幂的形式:
x
n
=
∑
j
=
0
x
{
n
j
}
x
j
‾
x^n=\sum_{j=0}^x \left \{ \begin{matrix}n \\ j\end{matrix}\right \}x^{\underline j}
xn=j=0∑x{nj}xj
当
j
>
x
j>x
j>x 时 下降幂变为 0 ,所以可直接写成:
x
n
=
∑
i
=
0
n
{
n
i
}
x
i
‾
\large x^n=\sum_{i=0}^n \left \{ \begin{matrix}n \\ i\end{matrix}\right \}x^{\underline i}
xn=i=0∑n{ni}xi
这就很优美了
4.贝尔数
含义: 把 1 ∼ \sim ∼ n 拆分成若干无序集合的方案数
bell数其实是第二类斯特林数的前缀和 , 可以理解为把 n 个有标号的球放入 n 个无标号的盒子里 , 允许空盒的方案数
递推式:
B
n
+
1
=
∑
i
=
0
n
(
n
i
)
B
i
,
B
0
=
1
B_{n+1}=\sum_{i=0}^{n}{n\choose i}B_i,B_0=1
Bn+1=i=0∑n(in)Bi,B0=1
性质:
- 若 p p p 是任意质数: B n + p ≡ B n + B n + 1 ( m o d p ) B_{n+p}\equiv B_n+B_{n+1} \ (mod \ p) Bn+p≡Bn+Bn+1 (mod p)
5.伯努利数
满足:
B
0
=
1
B_0=1
B0=1
∑
i
=
0
n
(
n
+
1
i
)
B
i
=
[
n
=
=
0
]
\sum_{i=0}^n{n+1\choose i}B_i=[n==0]
i=0∑n(in+1)Bi=[n==0]
化简移项
B
n
=
−
1
n
+
1
∑
i
=
0
n
−
1
(
n
+
1
i
)
B
i
B_n=-\frac{1}{n+1}\sum_{i=0}^{n-1} {n+1\choose i}B_i
Bn=−n+11i=0∑n−1(in+1)Bi
其生成函数为:
G
e
(
x
)
=
x
e
x
−
1
G_e(x)=\frac{x}{e^x-1}
Ge(x)=ex−1x
e
x
e^x
ex泰勒展开后多项式求逆在
O
(
n
l
o
g
n
)
O(nlogn)
O(nlogn)的复杂度内求出前
n
n
n项
可以用来求自然幂数和:
S
k
(
n
)
=
∑
i
=
1
n
i
k
=
1
k
+
1
∑
i
=
1
k
+
1
(
k
+
1
i
)
B
k
+
1
−
i
(
n
+
1
)
i
S_k(n)=\sum_{i=1}^n i^k=\frac{1}{k+1}\sum_{i=1}^{k+1} {k+1\choose i}{B_{k+1-i}}(n+1)^i
Sk(n)=i=1∑nik=k+11i=1∑k+1(ik+1)Bk+1−i(n+1)i
(不定期更新…)

本文详述了几种常见的数列,包括斐波那契数列、卡特兰数、斯特林数(第一类与第二类)、贝尔数和伯努利数。深入探讨了它们的递推关系、性质及其在不同场景中的应用,如排列组合、几何划分和算术运算等。

347

被折叠的 条评论
为什么被折叠?



