随笔分类 -  FFT/NTT

摘要:设f(n)为权值为n的神犇二叉树个数。考虑如何递推求这个东西。 套路地枚举根节点的左右子树。则f(n)=Σf(i)f(n-i-cj),cj即根的权值。卷积的形式,cj也可以通过卷上一个多项式枚举。可以考虑生成函数。 设F(x)为f(n)的生成函数,G(x)为c(n)的生成函数,G(x)中含有xa项表 阅读全文
posted @ 2018-08-08 17:09 Gloid 阅读(240) 评论(0) 推荐(0)
摘要:参考:http://www.matrix67.com/blog/archives/120 前置: 广义组合数:C(n,m)=n·(n-1)·……·(n-m+1)/m! (n∈R,m∈N) 广义二项式定理: 等比数列求和公式:a1+a1·q+a1·q2+a1·q3+……a1·qn=a1(1-qn+1) 阅读全文
posted @ 2018-08-07 20:05 Gloid 阅读(550) 评论(0) 推荐(0)
摘要:http://blog.miskcoo.com/2015/05/polynomial-division 好神啊! 通过翻转多项式消除余数的影响,主要原理是商只与次数不小于m的项有关。 阅读全文
posted @ 2018-08-07 16:44 Gloid 阅读(186) 评论(0) 推荐(0)
摘要:http://blog.miskcoo.com/2015/05/polynomial-inverse 好神啊! B(x)=B'(x)·(2-A(x)B'(x)) 注意ntt的时候防止项数溢出,即将多项式补零成n位后,相乘时次数最高的非零项不超过n次。 upd:可以在点值表示下直接相乘。又好写又跑得快 阅读全文
posted @ 2018-08-07 13:30 Gloid 阅读(242) 评论(0) 推荐(0)
摘要:显然每个点会提供相同的贡献。于是现在只考虑1号点的贡献。若其度数为i,则在2~n号点选i个连上,剩下的边随便连,这样可以算出答案为 这个式子可以O(n)计算。发现k比较小,于是考虑如何将这个式子化为与k有关的求和。 显然前面一部分可以直接提走。考虑后面一部分的组合意义:n-1个有标号盒子里面选i个, 阅读全文
posted @ 2018-07-30 13:22 Gloid 阅读(218) 评论(0) 推荐(0)
摘要:搬运一下之前在luogu blog写的。 参考http://picks.logdown.com/posts/177631-fast-fourier-transform 废话不写了。首先补零将多项式项数补为2的整数次幂。下标均从0开始。 DFT(递归版) 将系数表示转为点值表示。设项数为n,即求多项式 阅读全文
posted @ 2018-07-27 18:27 Gloid 阅读(285) 评论(2) 推荐(1)