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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【做题记录】[NOI2008] 假面舞会—有向图上的环与最长链

發布時間:2023/12/3 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【做题记录】[NOI2008] 假面舞会—有向图上的环与最长链 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

luogu 1477 [NOI2008] 假面舞會

容易發現:

  • 如果圖中沒有環,那么面具種數一定是所有聯通塊內最長鏈之和,最少為 \(3\)

  • 如果有環,則面具種數一定是所有環的大小的最大公約數。

那么只要求出每一個聯通塊內的最長鏈與環即可。

由于是有向邊,難以通過有向邊判斷聯通塊,因此考慮建立一個反向邊。將原來的邊邊權設為 \(1\) ,反向邊邊權設為 \(-1\)

\(\text{dfs}\) 時記錄這個聯通塊內最大、最小的 \(dep\) ,相減即為最長鏈。而如果遇到了已經訪問過的點,那么一定有環。

#include<bits/stdc++.h> using namespace std; #define infll 0x7f7f7f7f7f7f7f7fll #define inf 0x3f3f3f3f #define Maxn 100005 #define Maxm 1000005 typedef long long ll; inline int rd() {int x=0;char ch,t=0;while(!isdigit(ch = getchar())) t|=ch=='-';while(isdigit(ch)) x=x*10+(ch^48),ch=getchar();return x=t?-x:x; } int gcd(int x,int y){ return (y==0)?x:gcd(y,x%y); } int n,m,tot,ans1,ans2,maxx,minn; int dfn[Maxn],hea[Maxn],nex[Maxm<<1],ver[Maxm<<1],edg[Maxm<<1]; bool vis[Maxn]; void add(int x,int y,int d){ ver[++tot]=y,nex[tot]=hea[x],hea[x]=tot,edg[tot]=d; } void dfs(int x,int Dep) {if(vis[x]) { ans1=gcd(ans1,abs(Dep-dfn[x])); return; }dfn[x]=Dep,vis[x]=true;maxx=max(maxx,dfn[x]),minn=min(minn,dfn[x]);for(int i=hea[x];i;i=nex[i]) dfs(ver[i],Dep+edg[i]); } int main() {n=rd(),m=rd();for(int i=1,x,y;i<=m;i++) x=rd(),y=rd(),add(x,y,1),add(y,x,-1);for(int i=1;i<=n;i++) if(!vis[i])maxx=-inf,minn=inf,dfs(i,0),ans2+=maxx-minn+1;if(ans1){if(ans1<3) printf("-1 -1\n");else{for(int i=3;i<=ans1;i++)if(ans1%i==0) { printf("%d %d\n",ans1,i); break; }}}else{if(ans2<3) printf("-1 -1\n");else printf("%d 3\n",ans2);}return 0; }

總結

以上是生活随笔為你收集整理的【做题记录】[NOI2008] 假面舞会—有向图上的环与最长链的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 午夜日韩欧美 | 天堂网av2018 | 欧美国产91 | 欧美性受xxxx黑人xyx性 | 都市激情男人天堂 | 亚洲一区国产一区 | 欧美日韩亚洲不卡 | 多啪啪免费视频 | 日韩av资源网 | 欧美一区二区三区爱爱 | 久久久久久久久97 | h网站免费在线观看 | 91九色国产视频 | 四虎免费久久 | 天堂伊人 | 一级黄色在线观看 | 色牛av| 特级黄色录像 | 亚洲AV午夜成人片 | 国产精品久久久久久久av福利 | 日韩性xx| 99热自拍偷拍 | 日本视频www | 成av人片一区二区三区久久 | 四虎少妇做爰免费视频网站四 | 男人天堂av电影 | 国产又爽又猛又粗的视频a片 | 欧美成人h版在线观看 | 色婷婷av一区二区三区四区 | 人妻丰满熟妇av无码久久洗澡 | 日本在线中文 | 伊人网视频在线观看 | 天堂av网在线 | www.日韩欧美 | 91porny九色 | 日韩久久毛片 | 最近中文字幕一区二区 | 99免费观看 | 国产精品久久久久久久一区探花 | 小视频在线观看 | 色哟哟免费视频 | 欧美日韩在线观看视频 | 国产精品久久久久不卡 | 人人模人人爽 | 探花精品 | 四虎成人永久免费视频 | 午夜特片网 | 日本人的性生活视频 | 激情国产 | 亚洲熟女一区二区 | 91黄色在线视频 | 91免费小视频 | 91无毒不卡 | 成人mv | 一级特黄色大片 | 一区二区三区视频免费看 | 国产一级二级三级在线 | 国产精品成人99一区无码 | 日本大尺度做爰呻吟 | 尹人香蕉网 | 亚洲AV成人无码网站天堂久久 | 黑丝美女av| www.色综合 | 久久福利视频网 | wwyoujizzcom| 91色在线视频 | 久久久久99人妻一区二区三区 | 99视频在线播放 | 精品国自产在线观看 | 四虎影视成人 | 国产91成人 | 亚洲产国偷v产偷v自拍涩爱 | 日韩人成 | 欧美11一13sex性hd | 肉丝美脚视频一区二区 | 精品人妻少妇嫩草av无码 | 性农村xxxxx小树林 | 亚洲成人免费av | 欧美激情亚洲综合 | 99re6在线 | 国产乱大交 | 亚洲av成人无码一区二区三区在线观看 | 亚洲一区二区精品 | 无码精品一区二区三区在线播放 | 大度亲吻原声视频在线观看 | 国产香蕉在线视频 | 最新福利视频 | 精品福利一区 | 欧美黄色一级视频 | 日本免费一区二区三区最新 | 久久精精品久久久久噜噜 | 羞羞动态图 | 中文字幕乱码中文乱码b站 国产一区二区三区在线观看视频 | 精品麻豆视频 | 亚洲一区 中文字幕 | 免费av一区二区三区 | 亚洲欧洲精品一区二区 | 99久久综合网 | 国产一区二区三区四区在线观看 |