【总结】一般生成函数(OGF)&指数生成函数(EGF)&生成函数计数

这篇博客介绍了生成函数的概念,包括一般生成函数(OGF)和指数生成函数(EGF),以及它们在组合计数中的应用,如生成序列与集合、置换计数和背包计数。通过解析BZOJ系列例题,展示了如何利用生成函数解决实际的数学问题,如二叉树点权和、连通图个数以及特定条件的无向图计数。
摘要由CSDN通过智能技术生成

介绍一些简单的概念和计数题


生成函数概念


一般生成函数(OGF)

考虑一类组合对象组成的集合 A A A,对于集合中的每个元素 a a a定义其大小为 ∣ a ∣ |a| a(非负整数),设大小为 n n n的元素个数为 A n A_n An(所有 A n A_n An都是有限的)。

定义
A = ∑ i = 0 ∞ A i x i A=\sum\limits_{i=0}^{\infty} A_ix^i A=i=0Aixi
A A A的一般生成函数。

指数生成函数(EGF)

对于带标号组合对象组成的集合 A,定义
A = ∑ i = 0 ∞ A i i ! x i A=\sum\limits_{i=0}^{\infty}\dfrac{A_i}{i!}x^i A=i=0i!Aixi
A A A的指数生成函数。


关系

拼接两个对象 a , b a,b a,b
对于一般生成函数,方案唯一。
对于指数生成函数,由于集合中元素是带标号的, a , b a,b a,b拼接起来时只需保证拼接对象内部相对标号不变,方案数为 ( ∣ a ∣ + ∣ b ∣ ) ! ∣ a ∣ ! ∣ b ∣ ! \dfrac{(|a|+|b|)!}{|a|!|b|!} a!b!(a+b)!

普通型生成函数解决的是组合问题,而指数型生成函数解决的是排列问题。


生成函数计数


生成序列与集合

生成序列:
s e q ( A ) = ∑ i = 0 ∞ A i = 1 1 − A seq(A)=\sum\limits_{i=0}^{\infty}A^i=\dfrac{1}{1-A} seq(A)=i=0Ai=1A1
生成集合:
s e t ( A ) = ∑ i = 0 ∞ A i i ! = e A set(A)=\sum\limits_{i=0}^{\infty}\dfrac{A^i}{i!}=e^A set(A)=i=0i!Ai=eA


置换计数

k k k轮换有 ( k − 1 ) ! (k-1)! (

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值