常用数列总结&性质记录

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

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=Fi1+Fi2,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+21

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+2Fn+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 Fm1+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=Fn1+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=0n1CiCni1,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+1Cn1(4n2)

另类递推式:
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)(n12n)

应用:

  1. n 个元素的不同的出栈序列个数
  2. n 个元素的排列中最长下降子序列不超过 2 的排列个数
  3. 凸 n+2 边形的三角形划分数
  4. 球迷购票问题
  5. n 对括号正确匹配的排列方案数
  6. 链乘的括号化方案数

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]=[n1m](n1)+[n1m1]

理解:新来一个人的时候,要么坐在前面 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)nm[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+n1)
从生成函数方面考虑其含义,是从 [ 0 , n − 1 ] [0,n-1] [0,n1] 中选出任意多个数乘起来的和,其中第 m m m 次方项系数表示选了 n − m n-m nm 个数(剩下 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(n1,m)+f(n,m)(n1)
n − 1 n-1 n1 选不选就能够得出来 , 边界: 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=0n[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=0n(1)ni[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=0n[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{n1m}+{n1m1}

理解: 新来一个球 , 要么放入原有的盒子,要么放入一个新的盒子

常用公式(推导略):

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!1i=0m(1)i(im)(mi)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=0x(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=0x{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=0n{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=0n(in)Bi,B0=1

性质:

  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+pBn+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=0n(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=0n1(in+1)Bi

其生成函数为:
G e ( x ) = x e x − 1 G_e(x)=\frac{x}{e^x-1} Ge(x)=ex1x
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=1nik=k+11i=1k+1(ik+1)Bk+1i(n+1)i

(不定期更新…)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值