BZOJ4407 於神之怒加強版 莫比烏斯反演

2022-05-20 10:07:07 字數 847 閱讀 2652

給下n,m,k.求

輸入有多組資料,輸入資料的第一行兩個正整數t,k,代表有t組資料,k的意義如上所示,下面第二行到第t+1行,每行為兩個正整數n,m,其意義如上式所示。

如題1 2

3 3

201<=n,m,k<=5000000,1<=t<=2000

題解:如何快速推出線性篩的遞推式呢?——打表。

發現f(d)長得跟$\varphi(d)$差不多?所以遞推式也差不多

$f(i*pj)=\begin& f(i)*(pj^k-1) & i\%pj!=0 \\ & f(i)*pj^k & i\%pj==0\end$

#include #include #include using namespace std;

typedef long long ll;

const ll mod=1000000007;

const int n=5000000;

int t,k,num;

int pri[n];

ll f[n+10],sf[n+10],pk[n],ans;

bool np[n+10];

ll pm(ll x,ll y)

return z;

}void init()

f[i*pri[j]]=f[i]*(pk[j]-1)%mod;

} }}void work()

printf("%lld\n",(ans+mod)%mod);

}int main()

bzoj 4407 於神之怒加強版

time limit 80 sec memory limit 512 mb submit 624 solved 297 submit status discuss 給下n,m,k.求 輸入有多組資料,輸入資料的第一行兩個正整數t,k,代表有t組資料,k的意義如上所示,下面第二行到第t 1行,每行為兩...

bzoj 4407 於神之怒加強版

給下n,m,k.求 輸入有多組資料,輸入資料的第一行兩個正整數t,k,代表有t組資料,k的意義如上所示,下面第二行到第t 1行,每行為兩個正整數n,m,其意義如上式所示。如題1 2 3 3 20感覺是道比較水的數論題?提個d k隨手莫比烏斯反演一下,再把 跟d k放在一起,預處理出來就好了。瑪雅,1...

bzoj4407 於神之怒加強版

傳送門 題解 推一波公式 你還是需要前置技能 那麼好像可以o tnlogn 直接暴力啊!當然是兩遍根號分塊變成o tn 啊 好訊息過不去。當你莫比烏斯反演發現複雜度不對的話怎麼辦?繼續瞎 化簡!令x pd,那麼有 哎這個式子看起來很和善 後面那個好像是積性函式 逃 那麼線性篩就行啦!問題是怎麼篩呢。...