FFT/NTT/MTT学习笔记
FFT/NTT/MTT Tags:数学 作业部落 评论地址 前言 这是网上的优秀博客 并不建议初学者看我的博客,因为我也不是很了解FFT的具体原理 一、概述 两个多项式相乘,不用 \(N^2\) ,通过 \(FFT\) 可以把复杂度优化到 \(O(NlogN)\) , \(NTT\) 能够取模, \(MTT\) 可以对非 \(NTT\) 模数取模,相对来说 \(FFT\) 常数小些因为不要取模 二、我们来背板子(FFT) 先放一个板子( 洛谷P3803 【模板】多项式乘法(FFT) ) #include<iostream> #include<cstdio> #include<cstdlib> #include<cmath> using namespace std; const int MAXN=3000005; const double pi=acos(-1); int N,M,r[MAXN],l; struct Complex { double rl,im;//real part / imaginary part Complex(){rl=im=0;}//以下是初始化的板子,虽然不懂为什么可以这样写 Complex(double a,double b){rl=a,im=b;} Complex operator + (Complex B) {return Complex(rl+B