OI中的数论
一. 质数
概念
-
: 中与 互质的数的个数。
-
如果当 互质时,有 。那么称函数 为积性函数。若 是积性函数,且在算术基本定理中 ,则显然 。
性质
-
中质数的个数:约 。
-
欧拉函数
-
中与 互质的数的和为 。
证明:因为 ,所以 中与 互质的数总是成对出现,平均值为 ,总和为 。
-
若 互质, 则 。
证明:根据下文欧拉函数单点计算公式直接得出。
-
设 为质数,若 且 ,则 .
证明:由条件得 与 质因子种类相同,只是指数不同,将 和 根据下文单点计算公式拆分发现他们的商为 。
-
设 为质数,若 但 ,则 。
证明:由条件得 与 互质,由性质 2 可得 。
-
。
证明:设 互质,,。
所以 是积性函数。
设 的质因子种类共 种。
-
公式
-
单点计算公式:。
感性理解:对于 的每个质因子 来说, 中有这个质因子的数在所有数中的比例为 ,这部分肯定无法与 互质,剩下 可能与 互质,这是考虑一个质因子的情况。考虑所有质因子的情况就是 ,再乘上 中整数个数。
-
递推式:。
由性质 3、4 可得。
代码
-
单点质数筛
- 试除法
-
区间质数筛
-
埃氏筛
-
线性筛
-
-
自由区间质数筛
- 双筛法(筛小素数再筛区间素数)
-
单点质因数分解
- 试除法
-
单点欧拉函数——质因数分解(求值公式)
-
区间欧拉函数——线性法(积性性质)
-
自由区间欧拉函数——双筛法(求值公式)
二. 约数
性质
-
的约数个数上界:。
试除法的推论。
-
每个数约数个数的总和:约 。
倍数法的推论:
估算每个数的约数和比较难,可以反过来考虑每个数的贡献,即每个数会作为多少个数( 内)的约数。
的贡献分别是 ,可发现个数约是 。
-
中约数个数最多的数的约数个数是 。
公式
-
正约数个数:。
-
正约数和:。
证明:使用组合数证明即可。
代码
-
-
单点约数筛
- 试除法
-
区间约数筛
- 倍数法(埃氏)
三. 余数
概念
-
对于 ,合 的所有数模 同余,余数都是 该集合称为一个模 的同余类,简记为 。
-
模 的同余类一共有 个,分别为 。它们构成 的完全剩余系。
-
中与 互质的数代表的同余类共有 个,它们构成 的简化剩余系。 例如, 模 10 的简化剩余系为 。
乘法封闭:集合中的任意两个元素进行乘法运算,得到的结果还在这个集合中。
简化剩余系的性质: 的简化剩余系关于 乘法封闭。
证明:设 的简化剩余系中两数为 ,则 也与 互质,根据余数的性质, 也与 互质。
-
若整数 互质,并且 ,则存在一个整数 ,使得 。称 为 的模 乘法逆元,记为 。因为 ,所以 。
定理 / 公式
-
欧拉定理:若正整数 互质,则 ,其中 为欧拉函数。
证明:设集合 为 的简化剩余系,记作 , 为 的简化剩余系中所有数乘上 构成的集合,记作 。
-
证明所有 中元素都在 中:
因为 互质,所以 ,所以 。又因为简化剩余系具有乘法封闭的性质,所以
-
证明所有 中元素在模意义下不重复:
反证法。若 和 是 中两个不同元素,且 ,则 。又因为 ,所以 ,。矛盾。
-
证明 :
因为 1 和 2,又因为 、 中元素数量相等,所以 。
-
证明定理:
-
-
费马小定理:若 是质数,则对于任意整数 ,有 。
欧拉定理中 为质数,两边同乘 的情况。
-
欧拉定理推论1:若正整数 互质,则对于任意正整数 ,有 。
证明:设 。
-
欧拉定理推论2:当 不一定互质且 时, 有 。
证明:略。
-
裴蜀定理:对于任意整数 ,存在一对整数 ,满足 。
证明:
-
时,有 满足。
-
时。设 。
所以,有 满足。
-
-
方程 的通解:。
代码
-
-
求逆元
-
单点——、费马小定理
-
区间——线性求逆元
-
任意 数——前缀积
-
-