[学习笔记] 生成函数

生成函数学习笔记

普通生成函数#

定义#

我们定义序列<a>的普通生成函数为

nanxn

运算#

设序列<a>,<b>的生成函数分别为F(x),G(x),我们定义加法

F(x)+G(x)=n(an+bn)xn

这就是说,F(x)+G(x)是序列<a+b>的生成函数.

我们定义乘法为他们的卷积

F(x)G(x)=nxni=0naibni

F(x)G(x)是序列i=0naibni的生成函数.

一些有趣的trick#

在生成函数的定义下,设1,1,1...的生成函数为F(x),我们有

F(x)x+1=F(x)

我们怎么理解这件事?先考虑F(x)x所对应的原序列为0,1,1,1,1,,想要变回原序列,我们只需让这个序列的零次项系数变为1,也就是+1即可.

由上式,我们可以得到

F(x)=11x

类似地,我们可以得到等比数列1,p2,p3,p4...的生成函数G(x)满足

G(x)px+1=G(x)G(x)=11px

这是生成函数的常见手段.

麦克劳林展开#

通过麦克劳林展开可以计算生成函数.,计算公式如下:

f(x)=i=0f(n)(0)i!xn

其中fn(0)表示f(x)x0=0处的n阶导数.利用麦克劳林展开,我们可以快速计算.

广义二项式#

反转上指标#

所谓反转上指标,级考虑组合数中出现负数时,我们将其变为正数.下面给出公式.

(nm)=(1)m(mn1m)

广义二项式定理#

a,b,nR,(a+b)n=i=0n(ni)aibni

值得指出的是当nZ+时,i无法求和到n,所以i将求和到+.

利用上述工具,用生成函数解体变得轻而易举.

posted @   ZQYang  阅读(83)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
点击右上角即可分享
微信分享提示
主题色彩