基础数论总结
一、整除
定义 :若存在整数 k k k 使 b=ak b=ak b=ak,则称 a a a 整除 b b b,记作 a∣b a\mid b a∣b。
核心性质:
- 传递性:a∣b, b∣c⇒a∣c a\mid b,\ b\mid c \Rightarrow a\mid c a∣b, b∣c⇒a∣c
- 线性组合性:a∣b, a∣c⇒a∣(bx+cy) a\mid b,\ a\mid c \Rightarrow a\mid (bx+cy) a∣b, a∣c⇒a∣(bx+cy) 对任意整数 x,y x,y x,y 成立
- 互推性:a∣b a\mid b a∣b 且 b∣a⇒∣a∣=∣b∣ b\mid a \Rightarrow |a|=|b| b∣a⇒∣a∣=∣b∣
- a∣b a\mid b a∣b 且 a∣c a\mid c a∣c 则 a a a 整除它们的和、差及任意整数线性组合
二、辗转相除法(欧几里得算法)
核心定理 :
gcd(a,b)=gcd(b,a mod b) \gcd(a,b)=\gcd(b,a\bmod b) gcd(a,b)=gcd(b,amodb)
算法思想:反复用较小数除较大数取余,直到余数为 0,此时除数即为最大公约数。
关键性质:
- 能同时整除 a a a 和 b b b 的最大整数
- 可反向回代得到 ax+by=gcd(a,b) ax+by=\gcd(a,b) ax+by=gcd(a,b) 的整数解(扩展欧几里得)
三、埃氏筛
核心思想:从 2 开始,依次将每个素数的所有倍数标记为合数。
执行步骤:
- 列出 2 到 n n n 的所有数
- 从 2 开始,若当前数未被标记,则为素数
- 将其所有大于等于自身平方的倍数标记为合数
- 重复直到达到 n \sqrt{n} n
复杂度 :O(nloglogn) O(n\log\log n) O(nloglogn),接近线性
要点 :从 p2 p^2 p2 开始标记,因为 p p p 的较小倍数已被更小素数标记过
四、欧拉筛(线性筛)
核心思想 :每个合数只被其最小质因子 标记一次,实现严格线性复杂度 O(n) O(n) O(n)。
关键机制:
- 维护素数列表
- 遍历每个数 i i i,用已有素数 p p p 标记 i⋅p i\cdot p i⋅p
- 当 p p p 整除 i i i 时停止本轮标记
- 这一规则确保每个合数仅被其最小质因子乘上某个因数的方式标记一次
五、组合数
定义 :
(nk)=n!k!(n−k)! \binom{n}{k}=\frac{n!}{k!(n-k)!} (kn)=k!(n−k)!n!
表示从 n n n 个不同元素中选取 k k k 个的组合方式总数。
基本性质:
- 对称性:(nk)=(nn−k) \binom{n}{k}=\binom{n}{n-k} (kn)=(n−kn)
- 边界值:(n0)=(nn)=1 \binom{n}{0}=\binom{n}{n}=1 (0n)=(nn)=1
- (n1)=n \binom{n}{1}=n (1n)=n
- 要求 0≤k≤n 0\le k\le n 0≤k≤n,超出范围定义为 0
六、帕斯卡恒等式
(nk)=(n−1k−1)+(n−1k) \boxed{\binom{n}{k}=\binom{n-1}{k-1}+\binom{n-1}{k}} (kn)=(k−1n−1)+(kn−1)
组合意义(分情况讨论):
- 考虑集合中的某一个特定元素
- 若选取它:还需从剩余 n−1 n-1 n−1 个中选 k−1 k-1 k−1 个,方案数 (n−1k−1) \binom{n-1}{k-1} (k−1n−1)
- 若不选它:需从剩余 n−1 n-1 n−1 个中选 k k k 个,方案数 (n−1k) \binom{n-1}{k} (kn−1)
- 两类互斥且覆盖全部情况
七、二项式系数和公式
∑k=0n(nk)=2n \boxed{\sum_{k=0}^{n}\binom{n}{k}=2^n} k=0∑n(kn)=2n
体系关联图
| 工具 | 核心功能 |
|---|---|
| 整除 | 定义倍数与因子关系 |
| 辗转相除 | 求最大公约数 |
| 埃氏筛/欧拉筛 | 生成素数表 |
| 组合数 | 计数选取方式 |
| 帕斯卡恒等式 | 组合数递推关系 |
| 二项式系数和 | 全子集计数 |