找树

较为简单的多项式(集合幂级数)题。
但是有迷惑性,很容易让人以为是最优化题。
有一经典问题(一cf题):
有一图,边权有1,2,求出恰好有x条边权为1,y条边权为2的生成树个数。
考虑多项式。把边权为\(1\)的边的值赋值成\(1\),\(2\)的赋值成\(x\)。
矩阵树的边权不一定要为整数,为任意支持加法/乘法的运算即可。
然后矩阵树加法就是多项式加法,乘法就是多项式乘法。
然而这样子不太能过,要\(O(n^3)\)次多项式乘法。
考虑插值,做\(n\)次矩阵树即可。
回到原问题。
在题目定义的运算上fwt是个经典问题。
https://www.luogu.com.cn/blog/command-block/wei-yun-suan-juan-ji-yu-ji-kuo-zhan
和原题一样,把边权设为一个集合幂级数(多项式),然后加法就是对应位相加,乘法就是fwt。
这样子就能解决此题。

上一篇:【数论】FFT,NTT,FWT


下一篇:Codeforces 662C - Binary Table (FWT)