莫比烏斯反演詳解


話說這是我打的第一篇算法博客2333

話不多說直接進入正題

一、莫比烏斯函數μ

什么是μ?

μ(n)={

    1,n=1;

    (-1)k,n=p1*p2*p3*……*pk ,pn為互不相等的質數;

    0,else;

    }

μ的性質:

1、積性函數:線性篩

在線性篩質數的基礎上加幾句處理就好了

void get()
{
    mu[1]=1;
    for(int i=2;i<=10000000;i++)
    {
        //cout<<i<<endl;
        if(!p[i])
        {
            mu[i]=-1;
            prime[++cnt]=i;
        }
        for(int j=1;prime[j]*i<=10000000&&j<=cnt;j++)
        {
            p[prime[j]*i]=1;
            if(i%prime[j]==0)break;
            mu[i*prime[j]]=-mu[i];
        }
    }
}
線性篩莫比烏斯函數

2、Σi|nμ(i)=(n==1)

二、狄利克雷卷積

給定三個數論函數f,g,h,如果滿足h(n)=Σd|nf(d)*g(n/d),那么我們稱h=f*g,讀作f卷g

 

狄利克雷卷積的性質:

1、交換律 f*g=g*f

2、結合律 f*g*h=f*(g*h)

3、分配律 f*(g+h)=f*g+f*h

三、積性函數的狄利克雷卷積特殊性質

積性函數指對於所有互質的整數a和b有性質f(ab)=f(a)f(b)的數論函數。

常見積性函數:

μ

φ

d d(n)=Σk|n1

δ δ(n)=Σk|nk

還有三個及其重要的完全積性函數,就是說任意a,b,滿足f(a)*f(b)=f(a*b),他們是

e e(n)=(n==1)(這個函數也有管他叫ε的,但他太難打了,就叫e吧)

I I(n)=1

id id(n)=n

不要看他們式子簡單,他們可是莫比烏斯反演的核心,建議找張紙把他們抄下來,免得忘

根據上面的狄利克雷卷積,我們有

μ*I=e

又由e的式子,我們有

f*e=f,f是任意數論函數

然后就開始推式子了

設f=g*I,f,g均為積性函數

在兩邊同時卷上μ,則

f*μ=g*I*μ

I*μ=e,g*e=g

所以有 f*μ=g

即:

若f=g*I,則g=f*μ

然后就是上述幾個積性函數的綜合

μ*I=e

φ*I=id===>φ=id*μ

I*I=d

I*id=δ

四、數論分塊

給定n,求(Σd=1 ⌊n /d⌋)%998244353,n<=1e14

直接枚舉gg

考慮優化

我們發現,⌊n/d⌋是有可能等於⌊n/(d+1)⌋的

那我們為什么要重復算呢??

直接加就好了!!

那也就是說,對於一個i,我們要找到一個j,使得⌊n/i⌋=⌊n/(i+1)⌋=⌊n/(i+2)⌋=……=⌊n/j⌋!=n/(j+1)

那么,根據數學的一頓亂搞,我們得出

j=⌊n/(⌊n/i⌋)⌋

於是就可以優化了

可以證明優化的幅度是O(sqrt(n))的,但我不會

那就代碼了

for(ll i=1,j;i<=n;i=j+1)
{
j=n/(n/i);
ans=(ans+(j-i+1ll)%M*(n/i)%M)%M;
}
數論分塊

五、莫比烏斯反演

先來一道熱身題:

求Σi=1nΣj=1mgcd(i,j)==1,n,m<=1e7,T<=1e4

可以先自己試一試

 

 

 

 

 

 

 

 

 

 

 

 

 

 

開始化簡

后面等於1的形式一看就是e

考慮e=I*μ

則原式=Σi=1nΣj=1mΣd|gcd(i,j)μ(d)

考慮枚舉d

Σd=1min(n,m)μ(d)*Σi=1nΣj=1md|gcd(i,j)

考慮d|gcd(i,j)的意義

當且僅當d|i&&d|j時,d|gcd(i,j)

因此,原式可化為

Σd=1min(n,m)μ(d)*Σi=1nd|iΣj=1md|j

加個括號

Σd=1min(n,m)μ(d)*(Σi=1nd|i)*(Σj=1md|j)

(Σi=1nd|i)=⌊n/d⌋,j=1md|j)=⌊m/d⌋

因此原式可化為Σd=1min(n,m)μ(d)*⌊n/d⌋*⌊m/d⌋

顯然可以數論分塊O(n+T*sqrt(n))


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM