Mobius 函数除草。。。
(1)F(n) = sigma (G(d)) d | n
G(n) = sigma (F(d) * miu (n / d)) d | n
还有另外一个表达形式
(2)F(n) = sigma (G(d)) n | d
G(n) = sigma (F(d) * miu (d / n)) n | d
形式(1)的证明利用了逆元的思想,
形式(2)本质上等价于容斥定理(自己想想容斥定理的原理就知道了)
令满足1 <= a <= N, 1 <= b <= N, gcd(a, b) = k的个数为G(k), gcd(a,b)
为k的倍数的个数为F(k)
则有F(n) = sigma(G(d)) n|d
所以有G(n) = sigma(F(d)*miu(d/n)) n| d
到这里本题基本上就解决了,至于Mobius函数的求法可以参见JZB的线性筛。。。