题目大意
给定 \(n, G\),求 \[ G^{\sum_{d|n}\binom{d}{n}} \text{mod } {999911659} \]
分析
若 \(G\equiv0\pmod {999911659}\),那么答案为 \(0\)。否则,可以发现 \(999911659\) 是一个质数,使用欧拉定理的推论:
\(\mathrm{gcd}\,(a,p)=1\),则 \(a ^ b \equiv a^{b\,\text{mod}\,\varphi(p) } \pmod{p}\)。
将模数转移到指数上,变为求 \[ \sum _{ d | n } \binom{d}{n}\text{ mod }999911658 \] 求完后用快速幂就得到答案了。
然后这东西看着可以用 Lucas 定理搞,但显然 \(999911658 = 2\times3\times4679\times35617\) 不是质数。使用扩展Lucas的方法,将其进行质因数分解后,分别求\(\sum _{ d|n} \binom{d}{n}\) 模其质因数,设得到的结果为 $a_1,a_2,a_3,a_4 $,然后再用中国剩余定理求解以下方程组: \[ \begin{equation*} \begin{cases} &x\equiv a_1\pmod{2}\\ &x\equiv a_2\pmod{3}\\ &x\equiv a_3\pmod{4679}\\ &x\equiv a_4\pmod{35617}\\ \end{cases} \end{equation*} \] 设该方程组的最小正整数解为 \(x\),则答案为 \(G^x\)。
代码
1 |
|