oier

给定初始多项式\(f_1(x)=\sum_{i=0}^na_ix^i\)的系数\(a_0\dots a_n\),和\(b_2\dots b_n\)\(c_2\dots c_n\),后面\(f_i(x)=b_if_{i-1}\'(x)+c_if_{i-1}(x)\),求\(f(n)\)

系数在mod 998244353下

解:观察发现\(f_n(x)\)的系数\(a\'_kk!=\sum_{i=k}^na_ii!s_{i-k}\)其中我们定义\(s_{j}\)\(b_2...b_n\)中选择\(j\)个,其余的全部选对应的\(c\),把它们相乘,所有情况数之和

发现是个卷积的形式(需要把\(s\)数组翻转一下,然后再搞搞下标),然后搞一波ntt就出来了。

\(s\)数组如果直接做是\(2^n\)的,可以dp是\(n^2\)的也不行,我们可以利用分治,当\(n\)小时候为了减小常数可以\(O(n^2)\)但是\(n\)大的时候就分治,然后通过多项式乘法合并答案,这样子是\(O(n\log^2n)\)的。

总的复杂度是\(O(n\log^2n)\)

分类:

技术点:

相关文章:

  • 2021-08-15
  • 2022-12-23
  • 2021-08-06
  • 2022-12-23
猜你喜欢
  • 2022-02-04
  • 2021-10-11
  • 2021-06-20
  • 2021-10-11
  • 2022-12-23
  • 2021-10-28
  • 2021-05-29
相关资源
相似解决方案