分治 FFT

LG P4721 【模板】分治 FFT

  • 大概的流程就是对于一个区间 \([l,r]\) ,先求 \([l,mid]\) ,然后求 \([l,mid]\) 对于 \([mid+1,r]\) 的贡献,然后求 \([mid+1,r]\), 类似于 CDQ 分治

  • 对于左区间对于右区间位置 \(x\) 的贡献就是

\[\sum_{k=l}^{mid} f_kg_{x-k} \]

  • 显然是一个卷积的形式,把这个用 NTT 卷一下就好了

  • 那么总的复杂度就是 \(O(n\log^2n)\)

posted @ 2022-06-06 15:14  Kzos_017  阅读(25)  评论(0编辑  收藏  举报