简谈数论

· · 算法·理论

数论篇

一、基本工作:了解数论

数论是一种数学分支,英文 number theory,主要研究整数的性质。

二、整数除法

在数论中,整数除法的结果通常为:商和余数。用数学公式表达即为 a=bq+r\ (0\le r < b ) ,其中 q 为商, r 为余数。

取余运算同样是在做除法时求得的余数,不过它允许结果的符号与被除数相同。

取模运算的结果是在进行完整数除法后得到的余数。因计算机中数据绝大多数时候进行的是取模运算,所以我们后面一律用“取模运算”来表述。

我们通常把取模运算记作 a \bmod b = r

三、一些基本的公式

特别地,在MO(数学奥赛)中有高斯取整函数: [x]

由此基础,我们可以发现:

  1. b|a $ 等价于存在整数 $ k $ 使得 $a=kb
  2. a|b,c|d ,则 ac|bd
  3. 自反性: a|a
  4. 反对称性:若 a|b,b|a ,则 a=b
  5. 传递性:若 a|b,b|c ,则 a|c
  6. 线性法:若 a|b,a|c ,则 a|(mb+nc)
  7. 消去律:若 ma|mb ,则 a|b

特别地, 1 是所有整数的约数, 0 是所有整数的倍数。

四、最大公因数和最小公倍数

最小公倍数:两个或多个整数公有的倍数叫做它们的公倍数,其中除 0 以外最小的一个公倍数就叫做这几个整数的最小公倍。整数 a,b 的最小公倍数记为 [a,b]

我们为了方便进行使用,在计算中使用 \gcd(a,b) 代表 a,b 的最大公因数;同时,以 lcm(a,b) 代表 a,b 的最小公倍数。

特别地, \gcd(a,b)\times lcm(a,b)=a\times b

五、一些定理和公式

对于除数 x\le\sqrt n ,对应的 \lfloor\frac{n}{x}\rfloor 最多有 \sqrt n 个。

对于除数 x > \sqrt n ,则有

\lfloor\frac{n}{x} \rfloor \le \frac{n}{x}<\sqrt n

不超过 \sqrt n 种。

同时 \lfloor\frac{n}{x}\rfloor 的值是非严格单调的,所以相同的 \lfloor\frac{n}{x}\rfloor 对应的除数 x 是连续的。

如果我们知道了 \lfloor\frac{n}{x}\rfloor=y 的除数 x 区间左端点 l ,则可以直接计算出右端点 r

r=\left\lfloor{\frac{n}{\lfloor\frac{n}{l}\rfloor}}\right\rfloor

通过一个简单的循环,可以在 O(\sqrt n) 的时间复杂度内得到所有的的 \lfloor\frac{n}{x}\rfloor 值和对应的区间,即整除分块。

要求线性丢番图方程 ax + by = c 的特解,把 ax + by = \gcd(a, b) 的 特解乘上 \frac{c}{\gcd(a,b)}

扩展欧拉定理指出,对于正整数 a, b, p ,有:

a^b=\left\{ \begin{array}{c} a^b \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ b<\phi(p) \\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \pmod p\\ a^{b \bmod\phi(p)+\phi(p)} \ b \ge \phi(p)\end{array} \right.

这可以在取模意义下帮我们有效控制指数的大小

总结

从古到今,数学都是一个非常重要的学科。我们要努力学习,将前人精华予以传承。

依旧\ 向理想的银河迈进