拓展欧拉定理.
拓展欧拉定理 $a^b\equiv a^{b\bmod \varphi(p)+\varphi(p)} \bmod p$ ,并不要求 $b$ 与 $p$ 互质.
则 $2^{2^{2^{\dots}}}\equiv (2)^{2^{2^{2^{\dots}}}}\equiv (2)^{2^{2^{2^{\dots}}}\bmod \varphi(p)+\varphi(p)}\bmod p$ .
求出 $\varphi(p)$ 后递归求解,边界是当 $p=1$ 时,答案为 $0$ .
打表发现,对于 $10^7$ 之内的任何 $p$ ,最多递归 $3$ 次后就会变成 $1$ ,这样做速度是有保证的.
1 | //%std |