数论全家桶

下文中,若无特别说明,默认 \((x,y)\)\(\gcd(x,y)\)\([x,y]\)\(\text{lcm}(x,y)\)

gcd

表述形式:

\[(x,y)=(y,x\bmod y)\quad(y\neq 0) \]

证明:

不妨设 \((x,y)=d,x=ad,y=bd\) ,则易知 \((a,b)=1\)

\[\begin{aligned} &\because (a,b)=1\\ &\therefore (a\bmod b,b)=1\\ &\therefore ((a\bmod b)\cdot d,b\cdot d)=d=(x,y)\\ &\therefore (y,x\bmod y)=(x,y) \end{aligned} \]

得证。

用途

求解两个数的 \(\gcd\) ,也可推出 $ \text{lcm} $ 的式子: \([x,y]=\frac{x\cdot y}{(x,y)}\)

exgcd

表述形式 & 证明:

为求解一个不定方程 \(ax_1+by_1=(a,b)\) ,我们可以先求解 \(bx_2+(a\bmod b)\cdot y_2=(b,a\bmod b)\)

\[\begin{aligned} &\because (a,b)=(a\bmod b,b)\\ &\therefore ax_1+by_1=bx_2+(a\bmod b)\cdot y_2\\ &\ \ \ \ =bx_2+(a-\left\lfloor\frac{a}{b}\right\rfloor\cdot b)\cdot y_2\\ &\ \ \ \ =b(x_2-\left\lfloor\frac{a}{b}\right\rfloor\cdot y_2)+ay_2 \end{aligned} \]

于是我们可知, \(x_1=y_2,y_1=x_2-\left\lfloor\frac{a}{b}\right\rfloor\cdot y_2\) 是一组合法解。

用途

任意线性同余方程 \(ax+b\equiv 0\pmod p\) 皆可转化为 \(ax+py=p-b\) 这样的等价形式,若 \((p-b)\bmod (a,p)\neq 0\) ,由裴蜀定理可知方程无解;否则,我们先算出 \(ax+py=(a,p)\) 的解,再将解乘上 \(\frac{p-b}{(a,p)}\) ,即为原方程的一组解。

有了一组解后,我们不难发现方程的通解:注意到 \(x\) 增大 \(\frac{\text{lcm}}a\) ,而 \(y\) 减少 \(\frac{\text{lcm}}b\) 时方程仍正确,且此为最小变化的调整方案。于是其他的解都可如此调整得到。

excrt

表述形式 & 证明:

\[\begin{aligned} x&\equiv b_1\pmod {a_1}\\ x&\equiv b_2\pmod {a_2}\\ b_1&=x+c_1a_1\\ b_2&=x+c_2a_2\\ b_1-c_1a_1&=b_2-c_2a_2\\ a_1c_1+(-a_2)c_2&=b_1-b_2\\ \end{aligned} \]

用exgcd解出 \(c_1,c_2\) 可得 \(x\) ,则原来的两方程可合为 \(x\equiv x_{new} \pmod {[a_1,a_2]}\)

用途

求解包含多个形如 \(x\equiv b_i\pmod{a_i}\) 的式子的线性同余方程组。

顺便提一句,洛谷板子要开 __int128

lucas

表述形式

\[\binom nm\equiv\left({{\left\lfloor\frac np\right\rfloor}\atop{\left\lfloor\frac mp\right\rfloor}}\right)\cdot \left({n\bmod p}\atop{m \bmod p}\right)\pmod p \]

其中 \(p\) 为质数。
证明有点强,我不会。可以参考这个

用途

小模数导致的不好求逆元,无法常规预处理组合数。此时可用lucas求解。

posted @ 2025-02-17 07:46  ikusiad  阅读(11)  评论(0)    收藏  举报