多项式开根

模板题:Luogu P5205、Luogu P5277。

特殊情况:$a_0=1$

即 Luogu P5205。

牛顿法

推导过程

$$H^2(x) \equiv F(x) \pmod {x^{\lceil \frac{n}{2} \rceil}}$$

$$G(x) \equiv H(x) \pmod {x^{\lceil \frac{n}{2} \rceil}}$$

$$G(x)-H(x) \equiv 0 \pmod {x^{\lceil \frac{n}{2} \rceil}}$$

$$(G(x)-H(x))^2 \equiv 0 \pmod {x^n}$$

$$G^2(x)-2H(x) \times G(x)+H^2(x) \equiv 0 \pmod {x^n}$$

$$F(x)-2H(x) \times G(x)+H^2(x) \equiv 0 \pmod {x^n}$$

$$G(x)=\dfrac{F(x)+H^2(x)}{2H(x)}$$

对上述式子进行多项式求逆 + NTT 即可。

代码实现

迭代版

提交记录 备份

高级封装迭代版

提交记录 备份

提交记录 备份

一般情况

即 Luogu P5277。

套上奇素数模数的二次剩余模板(Cipolla 算法)即可。

提交记录 备份

提交记录 备份