生成函数例题
生成函数
$P4841$城市规划
$f(n)$表示$n$个点的无向连通图的方案数
$g(n)$表示$n$个点的无向图的方案数(可联通,可不连通)
考虑所有的方案都可以划一个标志,即$1$所在连通块大小
那么一切都简单了,无非是枚举第一个点连通块大小,其余的点任意相连
$g(n)=\sum_{i=1}^{n}C(n-1,i-1)f(i)g(n-i)$
$g(n)=2^{C(n,2)}$
$2^{C(n,2)}=\sum_{i=1}^{n}C(n-1,i-1)f(i)2^{C(n-i,2)}$
把$C(n-1,i-1)$拆开
$C(n-1,i-1)=\frac{(n-1)!}{(i-1)!\times (n-i)!}$
$\frac{2^{C(n,2)}}{(n-1)!}=\sum_{i=1}^{n}\frac{f(i)}{(i-1)!}\times\frac{2^{C(n-i,2)}}{(n-i)!}$
显然十分可以卷积
$F(i)=\frac{f(i)}{(i-1)!}$
$G(i)=\frac{2^{C(i,2)}}{i!}$
$H(i)=\frac{2^{C(i,2)}}{(i-1)!}$
$H(n)=\sum_{i=1}^{n}F(i)\times G(n-i)$
$H=F*G$
$F=H*G^{-1}$

浙公网安备 33010602011771号