2024.5.30 闲话

歌:对方集散地立刻发动大家来看随机附带了 - 大家分厘卡时间 feat. 重音テト .

问题:对于 \(m,k\),计算 \(\operatorname{ord}_m(x)=k\)\(x\) 个数 .

首先令 \(\psi(m)\) 是最大的满足对于任何 \(x\perp n\) 都有 \(x^k\equiv1\pmod m\)\(k\)A002322). 则:

\[\psi(p^k)=\begin{cases}p^{k-1}&p=2\land k\le 2\\p^{k-2}&p=2\land k\ge 3\\(p-1)p^{k-1}&p\ge 3\end{cases} \]

对于其他位置可以由素数幂处的值取 lcm 得到(这个并不重要).

先考虑计算 \(x^d\equiv1\pmod m\) 的解数 \(f_m(d)\),因为积性所以只需要考虑素数幂 \(p^c\) 处的情况 .

特判 \(p=2\),对于 \(p\ge 3\) 的情况,存在原根,所以可以转写为 \(d\cdot\operatorname{ind}(x)\equiv 0\pmod{\varphi(p^c)}\),这个方程显然只有 \(\gcd(\varphi(p^c),d)\) 个解 .

最终的结果是:令校正函数:

\[C_{m,p_i}(p^k)=\begin{cases}2\cdot p^k&p_i=p=2\land k\ge1\land 8\mid m\\p^k&\text{otherwise.}\end{cases} \]

则答案为 \(f_m(d)=\prod C_{m,p_i}(\gcd(\psi(p_i^{c_i},d)))\) .

容斥可得原问题的答案就是 \(f_m*\mu\),也就是:

\[c_m(d)=\prod_{p^c\Vert\psi(m)}\left(\prod_iC_{m,p_i}(\gcd(\psi(p_i^{c_i},p^c)))-\prod_iC_{m,p_i}(\gcd(\psi(p_i^{c_i},p^{c-1})))\right) \]

可以先假设 \(\nu_p(\psi(p_i^{c_i}))<c\) 然后调整 \(\nu_p(\psi(p_i^{c_i}))=c\) 的位置,注意到:

\[\prod_{p^c\Vert\psi(m)}\prod_iC_{m,p_i}(\gcd(\psi(p_i^{c_i},p^c)))=\varphi(m) \]

则:

\[c_m(d)=\varphi(m)\prod_{p\mid\psi(m)}\dfrac{p^{w_m(p)}-1}{p^{w_m(p)}}\text{ where }w_m(p)=[p=2\land2\mathop{\Vert}d\land8\mathop{\Vert}m]+\sum_i[\nu_p(\psi(p_i^{c_i}))=\nu_p(d)] \]

然而这个形式并没有什么太大的改进,只是稍微好看了一点 .

Reference:

以上 \(p\) 是素数 .

posted @ 2024-05-30 15:10  Jijidawang  阅读(121)  评论(0编辑  收藏  举报
😅​