数树
Luogu
LOJ
UOJ
先考虑固定一棵树的情况。
设固定的树的边集为\(E_1\),枚举的树的边集为\(E_2\)。
设\(f(T)=y^{n-|T|}\),那么\(ans=\sum\limits_{E_2}f(E_1\cap E_2)\)。
考虑经典子集反演\(f(T)=\sum\limits_{S\subseteq T}\sum\limits_{R\subseteq S}(-1)^{|S|-|R|}f(R)\)。
因此我们有
\(ans=\sum\limits_{E_2}\sum\limits_{S\subseteq E_1\wedge S\subseteq E_2}\sum\limits_{T\subseteq S}(-1)^{|S|-|T|}y^{n-|T|}\)
这个\(S\)显然要提到前面来
\(ans=\sum\limits_{S\subseteq E_1}(\sum\limits_{S\subseteq E_2}1)\sum\limits_{T\subseteq S}(-1)^{|S|-|T|}y^{n-|T|}\)
设\(g(S)=\sum\limits_{S\subseteq E_2}1\)即包含\(S\)的树的个数
\(ans=\sum\limits_{S\subseteq E_1}g(S)\sum\limits_{T\subseteq S}(-1)^{|S|-|T|}y^{n-|T|}\)
为了使后面的幂次化为同次我们把\(y^{n-|T|}\)拆一下
\(ans=\sum\limits_{S\subseteq E_1}g(S)y^{n-|S|}\sum\limits_{T\subseteq S}(-y)^{|S|-|T|}\)
稍微观察一下后面每项前面的系数可以发现它就是个二项式定理
\(ans=\sum\limits_{S\subseteq E_1}g(S)y^{n-|S|}(1-y)^{|S|}\)
推到这里差不多到底了,我们考虑一下\(g(S)\)。
假设\(S\)把\(n\)个点分成了\(m\)个连通块,每个连通块有\(a_i\)个点。
有点经验的话应该能够看出这是个Ex-Cayley定理的形式。
\(g(S)=n^{m-2}\prod\limits_{i=1}^ma_i\)
我们把这个代进去,注意\(n=|S|+m\)
\(ans=\sum\limits_{S\subseteq E_1}y^m(1-y)^{n-m}n^{m-2}\prod\limits_{i=1}^ma_i\)