首页 > 技术文章 > Snakes 的 Naïve Graph

yinwuxiao 2019-01-28 22:42 原文

题解:

首先分析一下这个问题

发现等价于是求n之内与n互素的数的个数,即欧拉函数

这个可以线性筛

但发现还应该减去$x^2==1$的情况

这个东西不是那么好处理

考虑用中国剩余定理拆

因为$p1^{a1}*p2^{a2}*p3^{a3}....$这些是互素的

所以拆完后的方程的解和原方程是唯一对应的

问题变成$x^2 \equiv 1  (mod \ pi^{ai})$

移项变成$(x-1)(x+1) \equiv1 (mod \ pi^{ai})$

注意到当$pi>2$时$pi$不可能同时整除$(x-1)$ $(x+1)$

即一定要有一个等于0,所以有两个解

当$pi=2$的时候,分ai讨论一下 $1-->1 \ \ \ \ 2-->2  \ \ \ \ (>3)-->4$

推荐阅读