01 - (sumlimits_{i=1}^{n} [gcd(i,m)=1])
索引:n以内与m互质的数的个数
求:(sumlimits_{i=1}^{n} [gcd(i,m)=1])
- 由 (sumlimits_{d|n}mu(d)=[n=1]) 得
(sumlimits_{i=1}^{n} sumlimits_{d|gcd(i,m)}mu(d)) - 交换求和顺序,得
(sumlimits_{d|m}mu(d)lfloorfrac{n}{d} floor) - 注意到当d有平方因子的时候 (mu(d)=0) ,那么求出 (m) 的所有的质因子然后容斥(其实莫比乌斯函数本身就代表容斥)
- 64位整数范围内的质因子不到20种,容斥的复杂度不超过1e6单次。
当n与m相等时, (varphi(n)=sumlimits_{i=1}^{n} [gcd(i,n)=1]) ,为欧拉函数的定义。所以可以得到 (varphi(n)=sumlimits_{d|n}mu(d)frac{n}{d}) 即 (frac{varphi(n)}{n}=sumlimits_{d|n}frac{mu(d)}{d})
仔细想想欧拉函数好像也是这样求的。