作者:中二攻子
链接:https://ac.nowcoder.com/discuss/175409
来源:牛客网
本文含NTT、MTT、拆系数FFT、共轭优化FFT、多项式求逆与ln
约定:
1、
表示一个普通的项数为
的幂次多项式,
是他的点值表示。
2、
代表单位根,
表示
次单位根。
3、
代表一个数列。
4、
表示原根。
多项式系列之零 底层知识:
多项式的表示:
多项式可以通过系数数列
表示,
是
的系数。
多项式可以通过点值表示,对于一个
次多项式,取
种不同的
取值带入
,得到
个值,在取相同这
个数的意义下,可以唯一的表示这个多项式。
多项式乘法:
定义
,在系数表示之下相乘复杂度
,在点值表示之下
,复杂度
。
复数:
复数一般情况下可以表示成
的形式,
是实数,
。
复数的幅角:平面直角坐标系上点
所在的任意角。
复数的模长:
两个复数相乘:
,复数相乘之后,模长等于原来两个复数的模长的乘积,幅角的角度等于原来两个幅角的和。
复数可以加减乘除,可以和实数一样的带入
。
在单位圆上从
开始平均取
个点,从
开始编号,分别是
。
画图观察可得:
所代表的复数
所代表的复数
DFT&IDFT:
在科学的数学函数意义上DFT是讲一个函数转化成三角函数的加减乘除的形式,三角函数的系数是原函数系数与点值之间的变换规律。IDFT是DFT的逆变换。
1、什么是
:在
意义下
互不相同,即
可以张成整个
下的域。
2、
存在的条件:
,
是奇素数。
3、如何求
:把
进行质因数分解
,如果对于任意的
,总有
,暴力枚举即可。
CRT合并:
求解
由
,得
带入二式,得
若
,用逆元直接除便可;否则通过
可求得
,若无解则方程组无解。
最后
。
多项式全集之一 FFT:
什么是FFT:
FFT是利用DFT的特殊性质,把
带入
从而
求一个系数多项式的点值表示,所以叫FDFT。
1、可以方便的IDFT:
设
的系数是
,在
的DFT下点值是
,
的系数是
,在
的DFT下点值是
。
当
时
,否则根据等比数列求和公式得
由此可得:
,
综上所述,对于点值取的
相反数做DFT再除以
可得到系数。
2、可以快速的DFT:
直接将
带入多项式做DFT需要复杂度
,我们利用
的性质优化: