GF 相关
OGF
无穷序列 a 的 OGF 为 F(x)=k≥0∑akxk,x 为占位符,没有实际意义,但可以用于分析 OGF 的敛散。
记 [xn]F(x)=an
如果将 a 看作一个背包序列,则其组合意义为选出和为 k 的无标号元素方案数为 [xk]F(x)。
这个形式幂级数的形式可以从代数意义上探究组合对象的性质。
可以定义 OGF 加法,减法,卷积,对应在 a 上的加法,减法,卷积。
OGF 卷积的组合意义为合并两个背包。
OGF 可以写出封闭形式,将无穷项的级数写成有限项的多项式(分式),而不丢失组合上的性质,这可以方便维护。
- F(x)=k≥0∑xk=1−x1
考虑 xF(x)+1=F(x),解方程即可。
从卷积角度入手可以说明卷上一个 1−x1 的组合意义是对 OGF 做前缀和,卷上 1−x 的组合意义是对 OGF 差分。
同理可以得到 F(x)=k≥0∑ckxk=1−cx1
- F(x)=k≥0∑(kα)xk=(1+x)α。
广义二项式定理。
- F(x)=k≥0∑(n−1n+k−1)xk=(1−x)n1
考虑操作实际意义为对杨辉三角第一列做 n 次前缀和,套用组合数列前缀和的性质我们可以说明其为第 n 列杨辉三角值。
也可以由封闭形式反推展开形式得到通项。
形如 1−BxA 的 OGF 容易得到其展开形式为 Ak≥0∑Bkxk,通项为 an=ABn,若干形如这种形式的项加起来也同理。对于不满足这种形式的 OGF,考虑通过分式分解的方法转成这个形式然后展开。
考虑斐波那契数列,Fn=Fn−1+Fn−2 容易写出其封闭形式的生成函数:
F(x)=xF(x)+x2F(x)+x
F(x)=1−x−x2x
考虑待定系数,我们断言其可以被分解为 1−axA+1−bxB 解出待定系数方程可以得到:
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧A=51a=21+5B=−51b=21−5
然后就可以得到斐波那契通项公式:
Fn=5(21+5)n−(21−5)
这里有些惊人的,与递推式的特征方程相关的性质,但是我不会。
EGF
无穷序列 a 的 EGF 为 F(x)=k≥0∑k!akxk。
这个除以 k! 可以这么理解:ak 为 k 有标号元素组合的方案数,因此除掉 k! 在 EGF 内部就不考虑顺序了,这样可以应用幂级数的相关代数性质。因此 EGF 用于维护有标号集合。
同样可以定义 EGF 的加减法,而卷积在 k!ak 上为普通卷积,在 ak 上为二项卷积。这也说明了 EGF 和乘法的组合意义。
EGF 极其关键的性质是 \e^x=\sum\limits_{k\geq 0}\dfrac{x^k}{k!}。这是 \e^x 的泰勒展开,其组合意义为将 x 这个有标号组合体自由组合得到的 EGF(枚举个数然后组合,再考虑内部的顺序)。
考虑贝尔数的 EGF,选出一个大小为 x 的有标号非空集合 EGF 为 \e^x-1,再自由组合为 \e^{\e^x-1}。
考虑第二类斯特林数的 EGF,相当于只能自由组合 k 次了,那么为 (\e^x-1)^k。
考虑一个有 m 种颜色的序列,每种颜色的 EGF 为 Fi(x),那么用这 m 种颜色排出一个长为 n 的序列的方案数为 [n!xn]i=1∏mFi(x)。这说明可以用 EGF 的乘积来从每种颜色的方向刻画序列方案数(有标号 SEQ 构造是吧)。
题
城市规划
有标号无向连通图计数,n≤1.3×105。
可以半在线卷积优化朴素的容斥 DP 做到 O(nlog2n)。
换种做法,设有标号无向连通图的 EGF 为 F(x),有标号无向一般图的 EGF 为 G(x),因为一般图可以视作连通分量的带标号自由组合,因此有 expF=G,即 F=lnG。而 G 显然就是枚举每条边是否出现乘起来,可以线性计算。
只需要一次 ln,复杂度 O(nlogn)。
考虑 ln 可以作为图 EGF 的连通化函数,exp 可以作为图 EGF 的去连通化(自由组合函数)。
有标号二分图计数
字面意思。
n≤105。
考虑枚举左右部点,中间自由连边,方案数为 i=0∑n(in)2i(n−i)。
但是这样会算重,因为一个连通块分配左右部点可以有两种方案。
我们设这个东西 EGF 为 G,最终答案的 EGF 为 F,先 ln 得到连通方案数,然后乘个 21 来使得每个连通块方案为一,最后 exp 一下自由组合回去,因此就有 F=exp(21lnG)=G。
只需要算开根,时间复杂度 O(nlogn)。
本文作者:World Creater
本文链接:http://worldcreaterwc.github.io/NFLS2024-327-md/
版权声明:本博客中所有原创文章除特别声明外,均允许规范转载,转载请注明出处。所有非原创文章,按照原作者要求转载。
最后更新:2024-12-19, 03:18:27