多项式芝士总结
Posted Flame♡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多项式芝士总结相关的知识,希望对你有一定的参考价值。
欧拉公式: e x i = c o s x + i s i n x e^xi=cosx+i~sinx exi=cosx+i sinx
当x取π的时候 有
e π i = c o s π + i s i n π = 1 e^\\pi i=cos\\pi+i~sin\\pi=1 eπi=cosπ+i sinπ=1
所以对于 x n = 1 x^n=1 xn=1
x x x 可能的一个解是 e 2 π i n \\frace^2\\pi in ne2πi
w n = e 2 π i n w_n=e^\\frac2\\pi in wn=en2πi
那么解集是 w n k ∣ k ∈ [ 0 , n ) w_n^k|k\\in[0,n) wnk∣k∈[0,n) (证明考虑欧拉公式) 别忘了是n次方,之所以范围是[0,n) 是因为等于n的时候 可以整体减去2π 答案不变
w n n = 1 w_n^n=1 wnn=1
有以下性质:
① w n k w_n^k wnk是互异的,保证用于插值的个数是对的
② w 2 n 2 k = w n k w_2n^2k=w_n^k w2n2k=wnk (一分两半值不变 可以分治)
③ w n n 2 + k = − w n k w_n^\\fracn2+k=-w_n^k wn2n+k=−wnk (直角坐标系上单位圆) (前半可以推后半)
以上都是在fft求点值的过程中用的 最后还需要从点值变回系数
④ k ≠ 0 , ∑ i = 0 n − 1 ( w n k ) i = 0 k\\neq0,\\sum\\limits_i=0^n-1(w_n^k)^i=0 k=0,i=0∑n−1(wnk)i=0 (感性理解 奇数次数和偶数次数相同)
两个复数相乘,模等于两个模相乘,辅角相加
具体来说 例如两个模是 a 2 + b 2 \\sqrta^2+b^2 a2+b2 c 2 + d 2 \\sqrtc^2+d^2 c2+d2
那么新的模式 a 2 + b 2 × c 2 + d 2 \\sqrta^2+b^2 \\times \\sqrtc^2+d^2 a2+b2×c2+d2
逆矩阵里是取倒数
之所以FFT时 ab数组是对应位置相乘 原因在于 本质上ab相乘对应卷积没有实际含义,只是为了求逆的方便,因此对应位置相乘
写代码的时候之所以写的是 π / m i d \\pi/mid π/mid 是因为本来应该是 ( 2 π ) / ( 2 m i d ) (2\\pi)/(2mid) (2π)/(2mid) 刚好约一下
NTT的时候 则 g n k = x k ( p − 1 ) / n g_n^k=x^k(p-1)/n gnk=xk(p−1)/n,其中 n是长度,k是幂 p是质数,x是p的一个原根
NTT常用质数:998244353,469762049,1004535809 原根都是3
以上是关于多项式芝士总结的主要内容,如果未能解决你的问题,请参考以下文章