一些多项式trick


大概是对于所有 (i)

[ [x^n]prod _{j!=i} (1-a_jx) B(x) ]

(B) 是一个 (n) 次多项式


显然有一个简单的暴力做法:

考虑

[ [x^n]frac {prod (1-a_jx) B(x)} {1-a_i x} ]

容易发现答案是关于 (a_i) 的多项式,多点求值即可。

复杂度 (nlog^2n) ,常数爆炸。


我们考虑将 (B) 系数翻转得到 (B'(x)) ,记其系数为 (b_i)

显然 (i) 位置的答案可以表示为 (sum _i b_i [x^i] (F_l *F_r))

考虑我们如何向下递归(向右为例)

[ ext{ans} = sum b[i] sum F_l[j] F_r[i-j] ]

(b) 和左边的多项式减法卷积一下,只需要保留 (n/2) 项即可。

原文地址:https://www.cnblogs.com/weiyanpeng/p/11985274.html