Learning 多項式的一些東西

2022-05-09 13:18:10 字數 2301 閱讀 9293

將\(fft\)中的單位複數根改成原根即可。

struct mul	} 

void ntt(int * a, int opt)

for (register int i = 0; i < len; i += 4)

for (register int i = 8; i <= len; i <<= 1)

}}

if (opt == -1)

}inline void init()

inline int getlen(int l)

};

也就是求

\[a(x)b(x) = 1 \pmod

\]假設我們已知

\[a(x)g(x) = 1 \pmod\rceil}}

\]兩式相減得

\[a(x)(b(x) - g(x)) = 0 \pmod\rceil}}

\]\[b(x) - g(x) = 0 \pmod\rceil}}

\]\[b^2(x) + g^2(x) - 2b(x)g(x) = 0 \pmod

\]兩邊同時乘上\(a(x)\)

\[a(x)b^2(x) + a(x)g^2(x) = 2a(x)b(x)g(x)

\]因為\(a(x)b(x) = 1\), 所以可以得到

\[b(x) + a(x)g^2(x) = 2g(x)

\]\[b(x) = 2g(x) - a(x)g^2(x)

\]就這樣解決了

時間複雜度為\(t(n) = t(\frac) +o(n \log n)\)

inline void getinv(int * a, int * b, int len)

return;

}

也就是求

\[b^2(x) = a(x) \pmod

\]假設我們已知

\[g^2(x) = a(x) \pmod\rceil}}

\]兩式相減得

\[b^2(x) - g^2(x) = 0 \pmod\rceil}}

\]然後平方一下

\[b^4(x) + g^4(x) - 2b^2(x)g^2(x) = 0 \pmod

\]\[b^4(x) + g^4(x) = 2b^2(x)g^2(x) \pmod

\]配一下方

\[b^4(x) + g^4(x) + 2b^2(x)g^2(x) = 4b^2(x)g^2(x) \pmod

\]\[(b^2(x) + g^2(x))^2 = (2b(x)g(x))^2 \pmod

\]\[b^2(x) + g^2(x) = 2b(x)g(x) \pmod

\]因為\(b^2(x) = a(x)\), 所以可以得到

\[b(x) = }

\]為了方便實現,我們常把它化成

\[b(x) = +

\]然後就解決了

時間複雜度為\(t(n) = t(\frac) + o(n \log n) = o(n \log n)\)

模擬即可

inline void getderi(int * a, int len)

模擬即可

inline void getinte(int * a, int len)

已知多項式\(a(x)\), 求\(b(x) = \ln (a(x))\)

根據鏈式法則, 我們可以得到

\[b'(x) = \frac(\ln(a(x)))}a(x)} \fraca(x)}x} = \frac

\]所以

\[b(x) = \int \frac \mathbbx

\]

void getln(int * a, int len)

時間複雜度還是\(t(n) = t(\frac) + o(n \log n) = o(n \log n)\)

我們要求\(f(x) = 0\)的根

那麼可以使用泰勒公式來近似\(f(x) = 0\)的根

我們設當前的近似值是\(x_\), 我們想要得到的近似值是\(x_\)

擷取泰勒公式的線性部分: $$f(x_) + f'(x_)(x_-x_n) = 0$$

解方程得: $$x_ = x_n - \frac)})}$$

這樣不斷迭代

我們可以用這種方法來解多項式方程。

我們要求的是 \(exp(a(x))\), 這相當於解乙個方程: \(\ln(exp(a(x))) - a(x) = 0\)

可以直接套用牛頓迭代法求解。

對稱多項式的一些結論

目錄數學中的對稱多項式是一種特殊的多元多項式。如果乙個 n 元多項式 text p x 1,x 2,x n 對任意的 n 元置換 sigma 都有 text p x x x text p x 1,x 2,x n 就說 text p 是對稱多項式。範德蒙德矩陣的行列式值 prod limits n x...

輔助多項式解決一些中值定理問題

開門見山吧,所謂輔助多項式即是當預證結論為 fn k 且題幹條件較多時,我們可以構造乙個n項多項式p x 使得p x 滿足題幹中f x 應該滿足的條件,然後令f x f x p x 再對f x 使用多次羅爾定理即可!注 n的取法 見到題目給出三個點我們很容易想到羅爾定理 卻發現這三個點不相等,那麼我...

多項式全家桶(一) 多項式的加,減,卷積

多項式的加,減,卷積,是比較基本的多項式操作,以模擬和 ntt nttnt t 為主,主要是展示和記錄模板的操作。單項式其實就是常數。inline polynomial operator const polynomial a,const int b inline polynomial operato...