这题可以用牛顿多项式做,不过也可以用生成函数搞。
设 fi 的 OGF 为 F(x),那么有:
F(x)=∞∑i=0fixi=∞∑i=0n∑k=1aikxi=n∑k=111−akx=n∑k=11+akx1−akx=n+xn∑k=1ak1−akx=n−xn∑k=1−ak1−akx
众所周知:
ln(x)′=1xln(1+x×y)′=x1+x×yln(x×y)=ln(x)+ln(y)
那么上面的就很显然了:
F(x)=n−xn∑k=1ln′(1−akx)F(x)=n−x×ln(n∏k=1(1−akx))′
分治 FFT + 多项式对数函数 + 多项式求导即可。
0 条评论