莫比乌斯函数及反演

莫比乌斯函数\(\mu\)

定义

\[\mu(d) = \begin{cases}1 & n=1 \\ 0 & n含有一个以上的相同的质因子 \\ (-1)^k & n不同的质因子个数 \end{cases} \]

性质

\(\mu\) 为积性函数,且:

\[\sum_{d \mid n} \mu(d) = \begin{cases} 1 & n=1 \\ 0 & n \neq 1 \end{cases} \]

即:\(\sum_{d \mid n} \mu(d) = \varepsilon(n)\)\(\mu * 1 = \varepsilon\)(这里为狄利克雷卷积

线性筛\(\mu\)

因为 \(\mu\)积性函数,因此可以考虑线性筛

void initMu()
{
    mu[1]=1;
    for(int i=2; i<=10000000; i++)
    {
        if(!vis[i])
        pre[++sum]=i, mu[i]=-1;
        for(int y=1; y<=sum; y++)
        {
            int j=pre[y];
            if(i*j>10000000||i*j<0) break;
            vis[i*j]=1;
            if(i%j==0)
            {
                mu[i*j]=0;
                break;
            }
            mu[i*j]=-mu[i];
        }
    }
}

莫比乌斯反演

\[[\gcd(i,j)=1] = \textstyle\sum_{d \mid \gcd(i,j)} \mu(d) \]

用法

\[\begin{aligned} \ \sum_{i,j} [\gcd(i,j)=1] &=\sum_{i,j} \sum_{d \mid \gcd(i,j)} \mu(d) \\ &=\sum_{d=1}^{n/p} \mu(d) \sum_{i,j}[d \mid gcd(i,j)] \\ &=\sum_{d=1}^{n/p} \mu(d) \lfloor \frac{n}{d} \rfloor \lfloor \frac{m}{d} \rfloor \end{aligned} \]

posted @ 2022-02-16 21:37  淸梣ling  阅读(50)  评论(0编辑  收藏  举报