莫比乌斯反演
莫比乌斯反演在数论中占有重要的地位,许多情况下能大大简化运算,特别是对于求解gcd的问题。 在学习莫比乌斯反演之前,我们先了解下积性函数。 积性函数 : 定义 :定义域为N+ 的函数 f,对于任意两个互质的正整数a, b: gcd(a, b) = 1,均满足f(ab) = f(a) ∗ f(b),则函数f 被称为积性函数。假如对于任意两个正整数a, b 均有f(ab) = f(a) ∗ f(b),则称f 为完全积性函数。 欧拉函数是积性函数,但不是完全积性函数。 积性函数的 性质 : • f(1) = 1 • 考虑一个大于1 的正整数N,设N = ∏ pi ai ,其中 pi 为互不相同的质数,那么对于一个积性函数 f, f(N) = f( ∏ pi a i ) = ∏ f(pi a i ) , 如果f 还满足完全积性,则 f(N) = ∏ f(pi) ai 。 • 若 f(n), g(n) 均为积性函数,则函数h(n) = f(n)g(n) 也为积性函数。 • 若 f(n) 为积性函数,则函数F(n) = Σ d|n f(d) 也是积性函数,反之亦然。 莫比乌斯反演 定理 : 和 是定义在非负整数集合上的两个函数,并且满足条件 ,那么我们得到结论 。 这是莫比乌斯反演的一般描述,即: 而在算法竞赛中,我们常用的是它的另一种描述: 其中 为莫比乌斯函数,它的定义如下: (1)若