多项式芝士总结

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) wnkk[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=0n1(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(p1)/n,其中 n是长度,k是幂 p是质数,x是p的一个原根

NTT常用质数:998244353,469762049,1004535809 原根都是3

以上是关于多项式芝士总结的主要内容,如果未能解决你的问题,请参考以下文章

生成函数芝士总结

多元一次方程组的解应该怎样列?

多项式的系数怎么求

模板多项式开方

数据结构与算法总结

实现两直角坐标系转换