日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

P2257-YY的GCD【莫比乌斯反演】

發(fā)布時間:2023/12/3 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 P2257-YY的GCD【莫比乌斯反演】 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

正題

題目鏈接:https://www.luogu.com.cn/problem/P2257


題目大意

給出n,mn,mn,m,求∑i=1n∑j=1m[gcd(i,j)∈p]\sum_{i=1}^n\sum_{j=1}^m[gcd(i,j)\in p]i=1n?j=1m?[gcd(i,j)p]

定義ppp是質數(shù)集


解題思路

首先考慮定義f(x)=∑i=1n∑j=1m[gcd(i,j)==x]f(x)=\sum_{i=1}^n\sum_{j=1}^m[gcd(i,j)==x]f(x)=i=1n?j=1m?[gcd(i,j)==x]
然后有F(x)=∑d∣xf(x)=?nx??mx?F(x)=\sum_{d|x}f(x)=\lfloor\frac{n}{x}\rfloor\lfloor\frac{m}{x}\rfloorF(x)=dx?f(x)=?xn???xm??
根據(jù)莫比烏斯反演就有f(d)=∑i∣dμ(id)F(d)f(d)=\sum_{i|d}\mu(\frac{i}ozvdkddzhkzd)F(d)f(d)=id?μ(di?)F(d)f(d)=∑i∣dμ(id)?nx??mx?f(d)=\sum_{i|d}\mu(\frac{i}ozvdkddzhkzd)\lfloor\frac{n}{x}\rfloor\lfloor\frac{m}{x}\rfloorf(d)=id?μ(di?)?xn???xm??枚舉質數(shù)ppp
然后有ans=∑pn∑d=1nμ(d)?npd??mpd?ans=\sum_{p}^{n}\sum_{d=1}^{n}\mu(d)\lfloor\frac{n}{pd}\rfloor\lfloor\frac{m}{pd}\rfloorans=pn?d=1n?μ(d)?pdn???pdm??
?ans=∑in?ni??mi?∑d∣iμ(id)\Rightarrow ans=\sum_{i}^{n}\lfloor \frac{n}{i}\rfloor\lfloor \frac{m}{i}\rfloor\sum_{d|i}\mu(\frac{i}ozvdkddzhkzd)?ans=in??in???im??di?μ(di?)

預處理∑d∣iμ(id)\sum_{d|i}\mu(\frac{i}ozvdkddzhkzd)di?μ(di?)的前綴和即可。


codecodecode

#include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int N=1e7+10; int T,n,m,cnt; int pri[N],mu[N],g[N]; long long ans; bool vis[N]; void prime(){mu[1]=1;for(int i=2;i<N;i++){if(!vis[i])mu[i]=-1,pri[++cnt]=i;for(int j=1;j<=cnt&&pri[j]*i<N;j++){vis[i*pri[j]]=1;if(i%pri[j]==0)break;mu[i*pri[j]]=-mu[i];}}for(int j=1;j<=cnt;j++)for(int i=1;pri[j]*i<N;i++)g[i*pri[j]]+=mu[i];for(int i=1;i<N;i++)g[i]+=g[i-1];return; } int main() {prime();scanf("%d",&T);while(T--){scanf("%d%d",&n,&m);if(n>m)swap(n,m);ans=0;for(int l=1,r;l<=n;l=r+1){r=min(n/(n/l),m/(m/l));ans+=1ll*(n/l)*(m/l)*(g[r]-g[l-1]);}printf("%lld\n",ans);} }

總結

以上是生活随笔為你收集整理的P2257-YY的GCD【莫比乌斯反演】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。