1 条题解
-
0
自动搬运
来自洛谷,原作者为

codecode
天堂有路我不走,学海无涯苦作舟搬运于
2025-08-24 22:17:19,当前版本为作者最后更新于2020-04-06 15:03:21,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
前言
upd(2021.02.13):更改了所有已知错误与笔误;对一些评论有异议的地方增添了补充说明;更改了部分用词并修正了一些内容;修正了部分错误的 LaTeX。
另外,codecode 早已退役
转战数竞,这次更新可能是对本博客的最后一次更新,但仍欢迎您反馈发现的问题/不懂的表述等说不定还会回来呢。upd(2020.04.06):更新了部分用词;修正了部分 LaTeX 错误;添加了部分内容。
楼下的大佬已经给出了正解,这里只是整理一下并帮他们补充完整证明。
作为数竞生,对于这种问题就想要给出一个完整的证明。(其实作为 OIer,只需要知道结论就可以了,不一定需要知道证明。(雾))
证明比较复杂,可能需要阅读并理解较长时间;如果不想看证明,可以跳到最后看结论。
证明过程
前置:费马定理,欧拉定理,拉格朗日定理。
这里只给出拉格朗日定理的证明。
前置 拉格朗日定理:设 为素数,对于模 意义下的整系数多项式
$$f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots+a_0\;(p\nmid a_n) $$的同余方程 在模 意义下至多有 个不同解。
证明:对 使用归纳法。当 时,由于 ,故 无解,定理对 的多项式 都成立。
若命题对于 的 都成立,由反证法,假设存在一个满足题目条件的 在模 意义下有着至少 个不同的解 。
可设 ,则 在模 意义下是一个至多 次的多项式。现在由 都是 的解,知对 ,都有
$$(x_i-x_0)g(x_i)\equiv f(x_i)-f(x_0)\equiv 0\pmod p $$而 ,故 ,从而 有至少 个根,与归纳假设矛盾。
所以,命题对 次多项式也成立,定理获证。
补充:关于拉格朗日定理的证明中,由于 ,故 就是 ,不影响阅读。
下面来看看阶与原根。
阶:由欧拉定理可知,对 ,若 ,则
因此满足同余式 的最小正整数 存在,这个 称作 模 的阶,记作 。
原根:设 ,。若 ,且 ,则称 为模 的原根。
关于阶有一个较为显然的性质:
若 ,则 。
证明: 对 除以 作带余除法,设
若 ,则
$$a^r\equiv a^r(a^{\delta_m(a)})^q\equiv a^n \equiv 1 \pmod m $$这与 的最小性矛盾。故 ,即 。
应评论:这里区分出 是为证明 。
阶还有两个重要的性质。
性质 :设 ,,,则
的充分必要条件是 。
证明: 必要性。由 及 ,可知
$$(ab)^{\operatorname{lcm}(\delta_m(a),\delta_m(b))}\equiv 1 \pmod m $$由前面所述阶的性质,有
$$\delta_m(ab)|\operatorname{lcm}(\delta_m(a),\delta_m(b)) $$又由于 ,故
$$\delta_m(a)\delta_m(b)|\operatorname{lcm}(\delta_m(a),\delta_m(b)) $$即 。
充分性。由 可知
$$1 \equiv (ab)^{\delta_m(ab)\delta_m(b)}\equiv a^{\delta_m(ab)} \pmod m $$故 。结合 即得
对称地,同理可得
所以
另一方面,有
$$(ab)^{\delta_m(a)\delta_m(b)}\equiv(a^{\delta_m(a)})^{\delta_m(b)}\times(b^{\delta_m(b)})^{\delta_m(a)}\equiv 1 \pmod m $$故
综合以上两点即得
性质 证毕。
性质 :设 ,,,,则
$$\delta_m(a^k)=\dfrac{\delta_m(a)}{\gcd(\delta_m(a),k)} $$证明:注意到
$$a^{k\delta_m(a^k)}=(a^k)^{\delta_m(a^k)}\equiv 1 \pmod m $$ $$\Rightarrow \dfrac{\delta_m(a)}{\gcd(\delta_m(a),k)}|\delta_m(a^k) $$另一方面,由 ,可知
$$(a^k)^{\frac{\delta_m(a)}{\gcd(\delta_m(a),k)}}=(a^{\delta_m(a)})^{\frac{k}{\gcd(\delta_m(a),k)}}\equiv 1 \pmod m $$故
$$\delta_m(a^k)|\dfrac{\delta_m(a)}{\gcd(\delta_m(a),k)} $$综合以上两点,得
$$\delta_m(a^k)=\dfrac{\delta_m(a)}{\gcd(\delta_m(a),k)} $$性质 证毕。
回到正题,我们下面来证明,关于怎样的 ,其原根存在。
首先, 时,原根存在。
定理 :对于奇素数 , 有原根。
证明:先证一个引理:
引理:设 与 是与 互素的两个整数,则存在 使得 $\delta_p(c)=\operatorname{lcm}(\delta_p(a),\delta_p(b))$。
该引理原来的证明存在错误,现已更改证明,感谢 @ lgLinZhengYu 及 @ Peanut_Tang 指出。
记 ,设它们的“标准分解”(这里对指数只要求 )分别为
$$r=\prod_{j=1}^s p_j^{\alpha_j},\quad t=\prod_{j=1}^s p_j^{\beta_j} $$令 为所有使得 的 的乘积,令 为所有使得 的 的乘积. 记 . 则这样定义的 满足 且 。
由性质 ,,则由性质 ,$\delta_p(a^lb^m)=xy=\operatorname{lcm}(\delta_p(a),\delta_p(b))$,即取 即可。
回到原命题,对 依次两两使用引理,可知存在 使得
$$\delta_p(g)=\operatorname{lcm}\left(\delta_p(1),\delta_p(2),\cdots,\delta_p(p-1)\right) $$这表明 ,所以 都是同余方程
的根。由拉格朗日定理,可知方程的次数 。
又由费马小定理,易知 ,故 。
综上可知 为模 的原根。
定理 证毕。
定理 :对于奇素数 ,, 有原根。
证明:一个基本的想法是将模 的原根平移。
先证明一个引理:
引理:存在模 的原根 ,使得
引理的证明:事实上,任取模 的原根 ,若 不满足条件,我们认定 满足条件。
易知 也是模 的原根。
我们有
$$\begin{aligned}(g+p)^{p-1}&\equiv C_{p-1}^0g^{p-1}+C_{p-1}^1pg^{p-2}\\&\equiv g^{p-1}+p(p-1)g^{p-2}\\&\equiv 1-pg^{p-2}\\&\not\equiv 1 \pmod {p^2}\end{aligned} $$回到原题,我们证明若 是一个满足引理条件的原根,则对任意 , 是模 的原根。
首先,证明下面的结论:对任意 ,都可设
这里 。事实上, 时,由 的选取可知结论成立。现设上式对 时成立,则
$$\begin{aligned}g^{\varphi(p^{\beta+1})}&=(g^{\varphi(p^{\beta})})^{p}\\&=(1+p^{\beta}\times k_{\beta})^p\\&\equiv 1+p^{\beta+1}\times k_{\beta} \pmod {p^{\beta+2}}\end{aligned} $$结合 可知命题对 成立。
所以命题对任意 都成立。
其次,记 ,则由欧拉定理,可知 。
而由 为模 的原根,及 可知 。
所以可设 ,这里 。
现在利用之前的结论,可知
$$g^{\varphi(p^{\beta})}\not\equiv 1\pmod {p^{\beta+1}}\Rightarrow g^{\delta}\not\equiv 1\pmod {p^{\beta+1}} $$结合 可知 。
综上可知,,即
$$\delta_{p^{\alpha}}(g)=p^{\alpha-1}(p-1)=\varphi(p^\alpha) $$从而, 是模 的原根。
定理 证毕。
定理 :对于奇素数 ,, 的原根存在。
证明:设 是模 的原根,则 也是模 的原根。
在 和 中有一个是奇数,设这个奇数是 ,则 。
由欧拉定理,。
而 $G^{\delta_{2p^{\alpha}}(G)}\equiv 1\pmod {2p^{\alpha}}$,故
$$G^{\delta_{2p^{\alpha}}(G)}\equiv 1 \pmod {p^{\alpha}} $$利用 为模 的原根可知 。
结合 可知 为模 的原根。
定理 证毕。
定理 :对于 ,且不存在奇素数 及 使得 ,则对任意 ,,都有 ,即模 的原根不存在。
证明:对于 ,,则对任意奇数 均有
$$\begin{aligned}a^{2^{\alpha-2}}&=(2k+1)^{2^{\alpha-2}}\\&\equiv 1+C_{2^{\alpha-2}}^1(2k)+C_{2^{\alpha-2}}^{2}(2k)^{2}\\&\equiv1+2^{\alpha-1}k+2^{\alpha-1}(2^{\alpha-2}-1)k^2\\&\equiv 1+2^{\alpha-1}(k+(2^{\alpha-2}-1)k)\\&\equiv 1 \pmod {2^{\alpha}}\end{aligned} $$其中最后一步用到 与 同奇偶,故其和为偶数。
若 不是 的幂,且 为符合题目条件的数,则可设 ,这里 且 。
此时,若 ,由欧拉定理可知
$$a^{\varphi(r)}\equiv 1 \pmod r\;,\quad a^{\varphi(t)}\equiv1\pmod t $$注意到 时, 为偶数,所以
$$a^{\frac{1}{2}\varphi(r)\varphi(t)}\equiv 1\pmod {rt} $$进而
$$\delta_m(a)\leq\dfrac{1}{2}\varphi(r)\varphi(t)=\dfrac{1}{2}\varphi(rt)=\dfrac{1}{2}\varphi(m)<\varphi(m) $$定理 得证。
结论
上面的定理 到 完整的给出了原根的充要条件。截至目前,我们证明了仅有 或奇素数 及 有原根,其它的数都没有原根。
那么我们可以先预处理素数及其幂次,及其幂次的 倍, 的判断一个数有没有原根。
如果一个数有原根,可以先求出最小正原根。
王元于 1959 年证明了若 有原根,其最小原根是不多于 级别的。
事实上,由大量试验数据可以发现,对于足够大的 ,其最小正原根的大小不是多项式级别的。
——百度百科
可以感性理解一下,模 的原根有 个,密度很大,所以最小原根很小。
根据这个结论,我们可以从小到大枚举。由原根的定义,若 为模 的原根,则对于 的任意素因数 ,必有
同时,满足如上条件的 ,必将是原根。
我们可以预处理出 的所有素因数,快速幂来判断。
假如找到了一个原根 ,不难证明对于所有 的 , 均为原根,所以模 的原根有 个。
所以我们可以在找到 后再枚举找出所有 的原根,排序后按要求输出。
复杂度不会算注意需要开 longlong。
- 1
信息
- ID
- 5081
- 时间
- 3000ms
- 内存
- 250MiB
- 难度
- 5
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者