欧拉定理的推广
欧拉定理要求 $\gcd(a,m)=1$,因此在 $a,m$ 不互质时无法直接使用。对于 $a,m$,若 $gcd(m,a)\ne 1$ 且 $x>\varphi(m)$,有
$$
a^x\equiv a^{x\mod\varphi(m)+\varphi(m)}\mod m
$$
证明:
$$
m=\prod_{i=1}^{n}p_i^{q_i},a=s\prod_{i=1}^{n}p_i^{k_i},\gcd(s,m)=1
$$
$$
即证:t\ge1,a^{t\varphi(m)}\equiv s^{t\varphi(m)}\prod_{i=1}^{n}p_i^{t\varphi(m)k_i}\equiv a^{\varphi(m)}\mod m
$$
$$
对于 k_i=0,p_i^{t\varphi(m)k_i}\equiv1\mod m
$$
$$
\varphi(m)\ge\varphi(p_i^{q_i})=p_i^{q_i-1}(p_i-1)\ge2^{q_i-1}\ge q_i
$$
$$
p_i^{b\varphi(m)}\equiv1 \mod \left(\frac{m}{p_i^{q_i}}\right),p_i^{b\varphi(m)+q_i}\equiv p_i^{q_i}\mod m
$$
$$
p_i^{(b+1)\varphi(m)}\equiv p_i^{\varphi(m)}\mod m
$$
显然,原命题成立。
例
思路
$$
2^{2^{2\cdots}}\equiv 2^{\left(2^{2\cdots}\mod\varphi(p)+\varphi(p)\right)}\equiv2^{\left(2^{\left(2^{2\cdots}\mod\varphi(\varphi(p))+\varphi(\varphi(p))\right)}\mod\varphi(p)+\varphi(p)\right)}\mod p
$$
当 $\varphi(\varphi(\cdots\varphi(p)))=1$ 时,在往上的 $2$ 就对答案没有影响了,而容易看出,这些 $2$ 最多有 $\log$ 层。
Code
1 |
|