FFT

FFT学习笔记

首先FFT是用来干嘛的呢?求多项式的乘积,怎么回事呢?

[F(x)=a_0+a_1x^1+a_2x^2+...a_nx^n ]

[D(x)=b_0+b_1x^1+b_2x^2+...b_nx^n ]

然后求它们的卷积,卷积是个什么东东??,卷积和多项式求值其实是一样的

现在给你两个向量

[vec{a}=(a_0,a_1,a_2,a_3...a_n) ]

[vec{b}=(b_0,b_1,b_2,b_3...b_n) ]

然后两个做卷积运算就会得到一个2n-1的向量

[vec{c}=({a_0b_0,a_0b_1+b_0a_1,a_2b_0+a_0b_2+a_1b_1,...,a_{n-1}b_n+a_{n}b_{n-1}}) ]

就是说

[vec{c}=sum_{i+j=k}ai+bi ]

就是下表加起来相同的得到新向量的一个分量,是不是和多项式计算是一样的,考虑怎么计算,很简单啊,暴力乘不就可以了,,,复杂度不美观,怎么搞,于是FFT横空出世!

先来学一些预备知识然后转链接https://www.luogu.org/blog/command-block/fft-xue-xi-bi-ji
回来的时候补一下单位根,

原文地址:https://www.cnblogs.com/lmjer/p/9850015.html