伯努利数简单学习笔记

伯努利数

定义与公式

我们常用 B i B_i Bi定义第 i i i个伯努利数。

生成函数定义方式:
z e z − 1 = ∑ n = 0 ∞ B n z n n ! \frac{z}{e^z-1}=\sum\limits_{n=0}^\infty B_n\frac{z^n}{n!} ez1z=n=0Bnn!zn
这里的 z ∈ C z\in C zC C C C为复数域)
由于伯努利数是指数型函数的母函数,所以我们对 e x e^x ex进行泰勒展开即可得到。


9 9 9项伯努利数:
B 0 = 1     B 1 = − 1 2     B 2 = 1 6     B 3 = 0     B 4 = − 1 30 B 5 = 0     B 6 = 1 42     B 7 = 0     B 8 = − 1 30     B 9 = 0 B_0=1\ \ \ B_1=-\frac{1}{2}\ \ \ B_2=\frac{1}{6}\ \ \ B_3=0\ \ \ B_4=-\frac{1}{30} \\ B_5=0\ \ \ B_6=\frac{1}{42}\ \ \ B_7=0\ \ \ B_8=-\frac{1}{30}\ \ \ B_9=0 B0=1   B1=21   B2=61   B3=0   B4=301B5=0   B6=421   B7=0   B8=301   B9=0

我们不难发现对于 B n B_n Bn,当 B n B_n Bn为奇数且不为 1 1 1时, B n = 0 B_n=0 Bn=0

其中有些时候定义 B 1 = 1 2 B_1=\frac{1}{2} B1=21,那么对应的生成函数只需改为 z e z e z − 1 \frac{ze^z}{e^z-1} ez1zez即可。


递归定义方式:
B n = [ m = 0 ] − ∑ k = 0 m − 1 ( m k ) B k m − k + 1 B_n=[m=0]-\sum\limits_{k=0}^{m-1}\tbinom{m}{k}\frac{B_k}{m-k+1} Bn=[m=0]k=0m1(km)mk+1Bk
边界为 B 0 = 1 B_0=1 B0=1 [ m = 0 ] [m=0] [m=0]表示当 m = 0 m=0 m=0时为 1 1 1,否则为 0 0 0

简单应用

  • 自然数幂的前缀和

∑ i = 1 n i k = 1 k + 1 ∑ i = 1 k + 1 C k + 1 i B k + 1 − i ( n + 1 ) i \sum_{i=1}^ni^k=\frac{1}{k+1}\sum_{i=1}^{k+1}C_{k+1}^iB_{k+1-i}(n+1)^i i=1nik=k+11i=1k+1Ck+1iBk+1i(n+1)i

  • 特殊的公式
    ∑ k = 0 n C n + 1 k B k = 0 \sum_{k=0}^{n}C_{n+1}^kB_k=0 k=0nCn+1kBk=0

B n = − 1 n + 1 ( C n + 1 0 B 0 + C n + 1 1 + ⋯ + C n + 1 n − 1 B n − 1 ) B_n=-\frac{1}{n+1}(C_{n+1}^0B_0+C_{n+1}^{1}+\cdots +C_{n+1}^{n-1}B_{n-1}) Bn=n+11(Cn+10B0+Cn+11++Cn+1n1Bn1)

我们将生成函数的公式继续变形得到:

= z ∑ i = 1 ∞ z i i ! = 1 ∑ i = 0 ∞ z i ( i + 1 ) ! =\frac{z}{\sum_{i=1}^{\infty}\frac{z^i}{i!}} \\ =\frac{1}{\sum_{i=0}^{\infty}\frac{z^i}{(i+1)!}} =i=1i!ziz=i=0(i+1)!zi1
最后就变成了多项式 ∑ i = 0 ∞ z i ( i + 1 ) ! \sum_{i=0}^{\infty}\frac{z^i}{(i+1)!} i=0(i+1)!zi的逆元了,用多项式求逆(NTT)即可在 O ( n l o g n ) O(nlogn) O(nlogn)的时间内预处理前 n n n项。


参考:

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

VictoryCzt

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值