【莫比乌斯反演·入门篇】懵逼钨丝反演

(Preface)

莫比乌斯反演是一种看似高深的数学知识(所以被萌新们称作懵逼钨丝反演),可实际上有一定了解之后,就会发现也不过那点套路啦~~~

因此,本文主要是对莫比乌斯反演的相关定义以及基本套路的介绍。

前置知识

  • 狄利克雷卷积: 这个东西比较简单,其实也就在一些定理证明上会派上用场,不会也罢。实在想知道的可自行百度。
  • 除法分块: 这个就很有用了,是莫比乌斯反演题的常客,或许可以看看这篇博客:除法分块及其应用

莫比乌斯函数

定义

莫比乌斯函数,符号为(mu(d)),它的具体定义如下:

[mu(d)=egin{cases}1&d=1\(-1)^k&d=prod_{i=1}^kp_i,p_iin Prime(forall i ot=j,p_i ot=p_j)\0&exists pin Prime,p^2|dend{cases} ]

唔姆,余不太用得来数学符号,上面的式子可能有些诡异。

但信(罗)仰(马)又不允许余在公式里使用中文,因此下面再放一份文字描述:

  • (d=1)(mu(d)=1)。(积性函数的共通性质)
  • (d)能分解为(k)不相同质数的乘积,(mu(d)=(-1)^k)
  • (d)包含相同的质因子,(mu(d)=0)

性质(1)(sum_{d|n}mu(d)=[n=1])

这是一个基本性质,用狄利克雷卷积的形式表示就是:

[mu*I=e ]

性质(2)(sum_{d|n}frac{mu(d)}d=frac{phi(n)}n)

这个东西其实很好证的啦,把两式同时乘上(n),得到:

[sum_{d|n}mu(d) imesfrac nd=phi(n) ]

其实这东西完全可以写成狄利克雷卷积的形式,也就是:

[mu*id=phi ]

这个东西怎么来的呢?

首先要知道(mu*I=e)(上面有了),(phi*I=id)(欧拉函数的性质,这里就不证明了),(f*e=f)(元函数的性质,其中(f)为任意函数)。

那么,只要在②式两边同时卷个(mu),就会发现(I)刚好和它消掉了,也就得到了要证的式子。

莫比乌斯反演定理

公式

[F(n)=sum_{d|n}f(d)Leftrightarrow f(d)=sum_{d|n}mu(d)F(frac nd) ]

证明

考虑如何证明,同样需要狄利克雷卷积的知识。

显然这两个式子分别为:

[egin{align}F=f*I\f=mu*Fend{align} ]

然后就发现这一步证明和前面性质(2)的证明非常像,只要在②式两边同时卷个(I),就得到①式啦!

是不是顿悟了?那就尽情地夸赞余吧!

补充说明

实际上吶,这个定理使用得并不多。

(但还是有的,而且用得非常妙:【BZOJ4833】[Lydsy1704月赛] 最小公倍佩尔数。)

而做莫比乌斯反演题更常见的解题方式将在下面进行介绍。

莫比乌斯反演的基本套路

例题

给出一道典型例题:【BZOJ1101】[POI2007] Zap

唔姆,下面就来介绍一下余的做法。

套路一

考虑题目中给出的式子:

[sum_{i=1}^nsum_{j=1}^m[gcd(i,j)=d] ]

下面介绍第一个经典套路,对于(gcd(i,j)),一般做法就是枚举(gcd)

但由于此题中已经限定(gcd(i,j)=d)(唔姆,似乎例题选得不太好?),因此无需枚举,直接将(i,j)都除以(d),得到:

[sum_{i=1}^{lfloorfrac nd floor}sum_{j=1}^{lfloorfrac md floor}[gcd(i,j)=1] ]

套路二

第二个套路,对于([gcd(i,j)=1]),利用(sum_{d|n}mu(d)=[n=1])这个基本性质,把它用莫比乌斯函数表示得到:

[sum_{i=1}^{lfloorfrac nd floor}sum_{j=1}^{lfloorfrac md floor}sum_{p|i,p|j}mu(p) ]

其实核心目的就是去掉带有中括号的布尔值表达式。

然后调整枚举顺序,将(p)提前得到:

[sum_{p=1}^{min(lfloorfrac nd floor,lfloorfrac md floor)}mu(p)lfloorfrac n{dp} floorlfloorfrac m{dp} floor ]

实际上熟练之后这些也都可以一步完成。

最后的求解

只需要除法分块就可以了。

总结

基本步骤就是上面的两个套路啦,可以多做些板子题去体会体会。

你会发现,即便是再华丽的剧场,莫比乌斯反演在其中扮演的角色基本上也就只有这两招而已。

(Postscript)

以上就是莫比乌斯反演的基本套路了,其他一些更高级的套路余或许会在做过更多题目之后去介绍。

完结撒花。

原文地址:https://www.cnblogs.com/Nero-Claudius/p/Mobius1.html