zoukankan      html  css  js  c++  java
  • 从零开始的伯努利数

    伯努利数的坑太多了,目前正全力整合

    基础部分已经填完了。

    伯努利数

    通常情况下指第一类伯努利数(B^-),递推式为

    [B_0=1,sum_{i=0}^ninom{n+1}{i}B_i=0(nge1) ]

    其前若干项为(1,-frac12,frac16,0,-frac1{30},0,cdots),发现对大于1的奇数(n)伯努利数(B_n=0)

    与第二类伯努利数(B^+)的差别在于(B_1^+=frac12),或者说(B^+_i=(-1)^iB^-_i),暂不研究。

    伯努利数的生成函数

    伯努利数(B)的指数生成函数

    [B(x)=sum_{i=0}frac{B_i}{i!}x^i=frac{x}{e^x-1} ]

    可以以如下方式推导

    [egin{aligned} sum_{i=0}^{n-1}inom{n}{i}B_i&=0(nge2)\ sum_{i=0}^{n}inom{n}{i}B_i&=B_n(nge2)\ sum_{i=0}^{n}frac1{(n-i)!}frac{B_i}{i!}&=frac{B_n}{n!}(nge2)\ sum_{n=2}sum_{i=0}^{n}frac1{(n-i)!}frac{B_i}{i!}x^n&=sum_{n=2}frac{B_n}{n!}x^n\ sum_{n=0}sum_{i=0}^{n}frac1{(n-i)!}frac{B_i}{i!}x^n&=sum_{n=2}frac{B_n}{n!}x^n+(frac{1}{1!}frac{B_0}{0!}+frac{1}{0!}frac{B_1}{1!})x^1+frac{1}{0!}frac{B_0}{0!}x^0\ sum_{n=0}sum_{i=0}^{n}frac1{(n-i)!}frac{B_i}{i!}x^n&=sum_{n=0}frac{B_n}{n!}x^n+x^1\ B(x) imes e^x&=B(x)+xRightarrow B(x)=frac{x}{e^x-1} end{aligned} ]

    这明面上给出了一个求出伯努利数列(B)的前(n)项的多项式做法,首先钦定(0^0=1)

    [B(x)=frac{x}{e^x-1}=frac{x}{sum_{i=0}frac{x^i}{i!}-1}=(sum_{i=0}frac{x^i}{(i+1)!})^{-1} ]

    伯努利多项式

    等幂和函数

    [S_m(n)=sum_{i=1}^ni^m(n,mge0) ]

    它的多项式表达,即伯努利多项式为

    [S_m(n)=frac1{m+1}sum_{i=0}^minom{m+1}{i}B^+_in^{m+1-i} ]

    转换一下,当(n>0)时,

    [egin{aligned} sum_{i=1}^{n-1}i^m=S_m(n)-n^m &=frac1{m+1}sum_{i=0}^minom{m+1}{i}B^+_in^{m+1-i}-n^m\ &=frac1{m+1}sum_{i=0,i ot=1}^minom{m+1}{i}B^+_in^{m+1-i}+frac1{m+1}inom{m+1}{1}frac12n^m-n^m\ &=frac1{m+1}sum_{i=0,i ot=1}^minom{m+1}{i}B^-_in^{m+1-i}-frac1{m+1}inom{m+1}{1}frac12n^m\ &=frac1{m+1}sum_{i=0}^minom{m+1}{i}B^-_in^{m+1-i}\ sum_{i=1}^{n-1}i^m&=frac1{m+1}sum_{i=0}^minom{m+1}{i}B^-_in^{m+1-i} end{aligned} ]

    更常见的是这样一个形式

    [sum_{i=0}^{n-1}i^m=frac1{m+1}sum_{i=0}^minom{m+1}{i}B^-_in^{m+1-i} ]

    怎么得到的?当(m>0)时它能直接得出;当(m=0)时式子右边为(n),而左边为(n-1+0^0),因此只需钦定(0^0=1)

    考虑证明新的这个式子,左边的生成函数

    [egin{aligned} F(x)&=sum_{i=0}sum_{j=0}^{n-1}j^ifrac{x^i}{i!}=sum_{j=0}^{n-1}sum_{i=0}j^ifrac{x^i}{i!}\ &=sum_{j=0}^{n-1}e^{jx}=frac{e^{nx}-1}{e^x-1}\ &=B(x)frac{e^{nx}-1}x\ &=B(x)frac{sum_{i=0}frac{(nx)^i}{i!}-1}x\ &=B(x)sum_{i=0}frac{n^{i+1}}{(i+1)!}x^i\ &=(sum_{i=0}frac{B_i}{i!}x^i)(frac{n^{i+1}}{(i+1)!}x^i) end{aligned} ]

    可知([m]F(x)=sum_{i=0}^mdfrac{B_i}{i!}dfrac{n^{m+1-i}}{(m+1-i)!}),再乘上指数生成函数中砍去的阶乘(m!),恰好是求证等式右边化简后的形式,即得证。

    例题 P3711 仓鼠的数学题

    现学现用

    [egin{aligned} sum_{k=0}^na_ksum_{i=0}^xi^k &=sum_{k=0}^na_k(frac1{k+1}sum_{i=0}^kinom{k+1}{i}B_ix^{k+1-i}+x^k)\ &=sum_{k=0}^nfrac{a_k}{k+1}sum_{i=0}^kinom{k+1}{i}B_ix^{k+1-i}+sum_{k=0}^na_kx^k\ end{aligned} ]

    参考之前推导的过程,对前一块拆开组合数,换枚举(x)次数来凑卷积

    [sum_{k=0}^nfrac{a_k}{k+1}sum_{i=0}^kfrac{(k+1)!B_i}{i!(k+1-i)!}x^{k+1-i} =sum_{k=0}^na_k(k!)sum_{i=0}^kfrac{B_i}{i!}frac{x^{k+1-i}}{(k+1-i)!}\ =sum_{k=0}^na_k(k!)sum_{i=1}^{k+1}frac{B_{k+1-i}}{(k+1-i)!}frac{x^i}{i!} =sum_{i=1}^{n+1}sum_{k=i-1}^na_k(k!)frac{B_{k+1-i}}{(k+1-i)!}frac{x^i}{i!}\ =sum_{i=1}^{n+1}frac{x^i}{i!}sum_{k=i-1}^na_k(k!)frac{B_{k-(i-1)}}{[k-(i-1)]!} ]

    将后一个分式的序列反向,就能凑出卷积了。

  • 相关阅读:
    Luogu4655 [CEOI2017]Building Bridges
    bzoj4892 [TJOI2017]DNA
    Luogu5058 [ZJOI2004]嗅探器
    bzoj4373 算术天才⑨与等差数列
    bzoj3122 [SDOI2013]随机数生成器
    CF940F Machine Learning
    bzoj1935 [SHOI2007]Tree 园丁的烦恼
    CF1012B Chemical table
    CF1012A Photo of The Sky
    bzoj4850 [JSOI2016]灯塔
  • 原文地址:https://www.cnblogs.com/nosta/p/11117140.html
Copyright © 2011-2022 走看看