0x33.1 同余、费马小定理和欧拉定理
同余的定义
若整数\(a\)和整数\(b\)除以正整数\(m\)的余数相等,则称 \(a,b\) 模 \(m\) 同余,
记为\(a \equiv b(\mod m)\)。
即:$$m \mid a - b \Leftrightarrow a \equiv b(\mod m)$$
性质:若\(a_1 \equiv b_1(\mod m)\), \(a_2 \equiv b_2(\mod m)\),,那么我们有
- \(a_1 \pm a_2 \equiv b_1 \pm b_2(\mod m)\)
- \(a_1 a_2 \equiv b_1 b_2(\mod m)\)
- \({a_1}^k \equiv {b_1}^k(\mod m)\)
完全剩余系
若\(a≡b(\mod m)\),则 \(a\) 和 \(b\) 属于模 \(m\) 的一个同余类。
模 \(m\) 的同余类一共有 \(m\) 个,他们构成m的完全剩余系。
简化剩余系
1 ~ \(m\) 中与 \(m\) 互质的数代表的同余类共有 $ \varphi (m)$ 个,他们构成 \(m\) 的简化剩余系。
费马小定理
若\(p\)是质数,则对于任意整数a,有
注:数学上常用的形式是\(a^{p-1} \equiv 1 (\mod p)\), 当$ p \nmid a$时。
上面的写法可避免讨论。
练习:
(1) 求整数\(0 \le a < 73\), 使得\(a \equiv 9^{794}(\mod 73)\).
(2) 解\(x^{86} \equiv 6(\mod 29)\).
欧拉定理
若正整数 \(a, n\) 互质,则\(a^{\varphi (n)} \equiv 1(\mod n)\),其中\(\varphi (n)\)为欧拉函数。
欧拉定理推论
若正整数 \(a, n\) 互质,则\(a^b \equiv a ^ {b \mod \varphi (n)} (\mod n)\),其中\(\varphi (n)\)为欧拉函数。
特别的,
当a,b不一定互质
且\(b > \varphi (n)\) 时, 有\(a^b \equiv a ^ {b \mod \varphi (n) + \varphi (n)} (\mod n)\)
#### 例 最幸运的数字
8是中国的幸运数字,如果一个数字的每一位都由8构成则该数字被称作是幸运数字。
现在给定一个正整数L,请问至少多少个8连在一起组成的正整数(即最小幸运数字)是L的倍数。
题解
\(x\)个8连在一起组成的数可以表示成\(8(10^x-1)/9\).
所有题目即求最小的x能使得\(L \mid 8(10^x-1)/9\).
该式等价于\(9L \mid 8(10^x-1)\).
记\(m = L/(\gcd(L, 8))\).
那么\(9L \mid 8(10^x-1) \Leftrightarrow 9m \mid 10^x-1\).
即\(10^x \equiv 1(\mod 9m)\)
注意到上次有解的一个前提是\(\gcd (10, 9m)= 1\)
且在此前提下\(10^{\varphi(9m)} \equiv 1(\mod 9m)\)。
所以使得同余式成立的最小正整数\(x_0\)是\(\varphi(9m)\)的约数 (证略),
现在我们只需枚举\(\varphi(9m)\)的约数,利用快速幂从小到大对约数进行检查即可。
注意:编写快速幂时在本题条件下会出现long long $\times $ long long, 需用到长整型的乘法。

浙公网安备 33010602011771号