莫比乌斯反演例题讲解
注意:此处均默认$n<m$
1.$\sum_{i=1}^n\sum_{j=1}^m [\gcd(i,j)=1]$
由$\mu$的定义式可知$\sum_{d|n}\mu(d)=[n=1]$
将$n$替换为$\gcd(i,j)$,得
$[\gcd(i,j)=1] = \sum_{d|\gcd(i,j)}\mu(d)$
然后就开始我们的反演
$$\sum_{i=1}^n\sum_{j=1}^m[\gcd(i,j)=1]$$
由上面的式子得
$$=\sum_{i=1}^n\sum_{j=1}^m\sum_{d|gcd(i,j)}\mu(d)$$
枚举$d$,那么$\gcd(i,j)$为$d$的倍数,$i,j$都应为$d$的倍数,故$i,j$同除$d$
$$=\sum_{d=1}^n\mu(d)\sum_{i=1}^{\lfloor\frac nd\rfloor}\sum_{j=1}^{\lfloor\frac md\rfloor}1$$
$$=\sum_{d=1}^n\mu(d)\lfloor\frac nd\rfloor\lfloor\frac md\rfloor$$
使用整除分块来求值
2.$\sum_{i=1}^n\sum_{j=1}^m [\gcd(i,j)=d]$(luogu P3455)
$i,j$都应为$d$的倍数,故$i,j$同除$d$
$$\sum_{i=1}^a\sum_{j=1}^b[\gcd(i,j)=d]$$
$$=\sum_{i=1}^{\lfloor \frac ad \rfloor}\sum_{j=1}^{\lfloor \frac bd\rfloor}[\gcd(i,j)=1]$$
剩下的处理方式同$1$
3.$\sum_{i=1}^n\sum_{j=1}^m[\gcd(i,j)\in prime]$(luogu P2257)
先按套路来
$$\sum_{i=1}^n\sum_{j=1}^m[\gcd(i,j)\in prime]$$
$$=\sum_{d=1}^n\sum_{i=1}^{\lfloor\frac nd\rfloor}\sum_{j=1}^{\lfloor\frac md\rfloor}[\gcd(i,j)=1]\qquad(d\in prime)$$
$$=\sum_{d=1}^n\sum_{i=1}^{\lfloor\frac nd\rfloor}\sum_{j=1}^{\lfloor\frac md\rfloor}\sum_{k|\gcd(i,j)}\mu(k)\qquad(d\in prime)$$
$$=\sum_{d=1}^n\sum_{k=1}^{\lfloor\frac nd\rfloor}\mu(k)\lfloor\frac n{kd}\rfloor\lfloor\frac m{kd}\rfloor\qquad (d\in prime)$$
设$kd=T$,枚举$T$
$$=\sum_{d=1}^n\sum_{k=1}^{\lfloor\frac nd\rfloor}\mu(k)\lfloor\frac nT\rfloor\lfloor\frac mT\rfloor\qquad(d\in prime)$$
$$=\sum_{T=1}^n\lfloor\frac nT\rfloor\lfloor\frac mT\rfloor\sum_{d|T}\mu(\frac Td)\qquad(d\in prime)$$
然后只需要处理质数的倍数的$\mu$函数的前缀和即可
4.$\sum_{i=1}^n\sum_{j=1}^md(ij)$(luogu P3327)
有一个公式:
$$d(ij)=\sum_{x|i}\sum_{y|j}[\gcd(x,y)=1]$$
证明方法见我写的$dirichlet$卷积博客
然后按照套路反演
$$\sum_{i=1}^n\sum_{j=1}^md(ij)$$
$$=\sum_{i=1}^n\sum_{j=1}^m\sum_{x|i}\sum_{y|j}[\gcd(x,y)=1]$$
$$=\sum_{i=1}^n\sum_{j=1}^m\sum_{x|i}\sum_{y|j}\sum_{d|gcd(i,j)}\mu(d)$$
$$=\sum_{d=1}^n\mu(d)\sum_{i=1}^{\lfloor\frac n{d}\rfloor}\sum_{j=1}^{\lfloor\frac m{d}\rfloor}\sum_{x|i}\sum_{y|j}1$$
枚举$x,y$
$$=\sum_{d=1}^n\mu(d)\sum_{x=1}^{\lfloor\frac nd\rfloor}\sum_{y=1}^{\lfloor\frac md\rfloor}\lfloor\frac n{dx}\rfloor\lfloor\frac m{dy}\rfloor$$
$$=\sum_{d=1}^n\mu(d)\sum_{x=1}^{\lfloor\frac nd\rfloor}\lfloor\frac n{dx}\rfloor\sum_{y=1}^{\lfloor\frac md\rfloor}\lfloor\frac m{dy}\rfloor$$
令$f(S)=\sum_{i=1}^S\lfloor\frac Si\rfloor$,则原式为
$$\sum_{d=1}^n\mu(d)\cdot f(\lfloor\frac nd\rfloor)\cdot f(\lfloor \frac md\rfloor)$$
然后就可以整除分块处理了
5.$\sum_{i=1}^n\sum_{j=1}^mlcm(i,j)$(luogu P1829)
由于$lcm(i,j)=\frac{ij}{\gcd(i,j)}$,则
$$\sum_{i=1}^n\sum_{j=1}^mlcm(i,j)$$
$$=\sum_{i=1}^n\sum_{j=1}^m\frac{ij}{\gcd(i,j)}$$
gcd在分母上不好看,我们转换一下
$$=\sum_{i=1}^n\sum_{j=1}^m\sum_{d=1}^n[\gcd(i,j)=d]\frac{ij}{d}$$
枚举$d$
$$=\sum_{d=1}^nd\sum_{i=1}^{\lfloor\frac nd\rfloor}\sum_{j=1}^{\lfloor\frac md\rfloor}ij[\gcd(i,j)=1]$$
$$=\sum_{d=1}^nd\sum_{i=1}^{\lfloor\frac nd\rfloor}\sum_{j=1}^{\lfloor\frac md\rfloor}ij\sum_{x|gcd(i,j)}\mu(x)$$
$$=\sum_{d=1}^nd\sum_{x=1}^{\lfloor\frac nd\rfloor}x^2\mu(x)\sum_{i=1}^{\lfloor\frac n{dx}\rfloor}i\sum_{j=1}^{\lfloor\frac m{dx}\rfloor}j$$
预处理出$x^2\mu(x)$,然后前后各做一次整除分块即可。