一:什么是莫比乌斯反演
简单点的说,就是先给出一个函数 F(n) ,然后再由 F(n)定义一个新函数 G(n)其中 G(n) = sigma(F(d)) (其中d被“包含”于n) 然后 现在我们不知道 F(n)的值 , 却知道 G(n), 接着我们就可以通过 反演由G(n)反向得到F(n)
什么叫 (其中d被“包含”于n) ?以及怎么理解反演? 通过下面的几个例子说明
例1:
我们直接定义 G(n)=sigma(F(i)) (1<=i<=n)
{这里的每个F(i),相对于G(n)实际上就是一种包含关系了!!}
然后我们现在已经知道 G(n)=n*(n+1)/2;接下来 我们要通过 G(n)反向得到F(n) 的过程,就是反演当然,这个问题很简单,很容易都可以看出来 F(n)=n
定义
假设对于数论函数f(n)和F(n),有以下关系式:
则将其默比乌斯反转公式定义为:
在上面的公式中有一个函数,它的定义如下:
(1)若d = 1,那么![这里写图片描述](https://img-blog.csdn.net/20140416160256500) = 1;
(2)若d =p1p2p3...pk,pi均为互异素数,那么![这里写图片描述](https://img-blog.csdn.net/20140416160256500) = (-1)^k
(3)其它情况下 ![这里写图片描述](https://img-blog.csdn.net/20140416160256500) = 0
对于函数
性质如下
(1)对任意正整数有
(2)对任意正整数有
莫比乌斯函数
Description
莫比乌斯函数,由德国数学家和天文学家莫比乌斯提出。梅滕斯(Mertens)首先使用μ(n)(miu(n))作为莫比乌斯函数的记号。(据说,高斯(Gauss)比莫比乌斯早三十年就曾考虑过这个函数)。
具体定义如下:
如果一个数包含平方因子,那么miu(n) = 0。例如:miu(4), miu(12), miu(18) = 0。
如果一个数不包含平方因子,并且有k个不同的质因子,那么miu(n) = (-1)^k。例如:miu(2), miu(3), miu(30) = -1,miu(1), miu(6), miu(10) = 1。
给出一个数n, 计算miu(n)。
Input
输入包括一个数n,(2 <= n <= 10^9)
Output
输出miu(n)。
Sample Input
5
Sample Output
-1