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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

HDU - 4635 Strongly connected(强连通缩点+数学+思维)

發(fā)布時間:2024/4/11 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HDU - 4635 Strongly connected(强连通缩点+数学+思维) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題目鏈接:點擊查看

題目大意:給出一個由n個點和m條邊構(gòu)成的無向圖,現(xiàn)在問最多能添加幾條邊,能使得原圖仍然不是強連通圖,若原圖初始時就是強連通圖,直接輸出-1

題目分析:首先對于原圖來說,肯定會有一些集合中已經(jīng)是強連通的了,我們可以先強連通縮點,再繼續(xù)操作,最優(yōu)情況肯定是需要孤立一個點,然后剩下的點構(gòu)成強連通分量,并且強連通分量中的每個點都對這個孤立的點連邊,假設孤立的點所代表的集合大小為x,其他點的總數(shù)為y,滿足x+y=n,這樣計算出來的答案就是x*(x-1)+y*(y-1)+x*y-m,到此為止直接枚舉每一個符合條件的集合作為孤立集合,計算答案,實時更新最大值就好了,至于滿足條件的點,必須是在邊上的點,意思就是出度或入度兩者中的一個必須為0才行,這樣就能根據(jù)數(shù)學公式計算最大值了

代碼:

#include<iostream> #include<cstdlib> #include<string> #include<cstring> #include<cstdio> #include<algorithm> #include<climits> #include<cmath> #include<cctype> #include<stack> #include<queue> #include<list> #include<vector> #include<set> #include<map> #include<sstream> using namespace std;typedef long long LL;const int inf=0x3f3f3f3f;const int N=1e5+100;const int M=1e5+100;struct Egde {int to,next; }edge1[M],edge2[M];int head1[N],head2[N],low[N],dfn[N],c[N],Stack[N],num,cnt,cnt2,cnt1,dcc,n,m,top,in[N],out[N];bool ins[N];vector<int>scc[N];void addedge1(int u,int v) {edge1[cnt1].to=v;edge1[cnt1].next=head1[u];head1[u]=cnt1++; }void addedge2(int u,int v) {edge2[cnt2].to=v;edge2[cnt2].next=head2[u];head2[u]=cnt2++; }void tarjan(int u) {dfn[u]=low[u]=++num;Stack[++top]=u;ins[u]=true;for(int i=head1[u];i!=-1;i=edge1[i].next){int v=edge1[i].to;if(!dfn[v]){tarjan(v);low[u]=min(low[u],low[v]);}else if(ins[v])low[u]=min(low[u],dfn[v]);}if(dfn[u]==low[u]){cnt++;int v;do{v=Stack[top--];ins[v]=false;c[v]=cnt;scc[cnt].push_back(v);}while(u!=v);} }void solve() {for(int i=1;i<=n;i++)//縮點 if(!dfn[i])tarjan(i); }void build()//縮點+連邊 {solve();for(int i=1;i<=n;i++){for(int j=head1[i];j!=-1;j=edge1[j].next){int u=i;int v=edge1[j].to;if(c[u]!=c[v]){addedge2(c[u],c[v]);out[c[u]]++;in[c[v]]++;}}} }void init() {for(int i=0;i<N;i++)scc[i].clear();top=cnt=cnt1=cnt2=num=dcc=0;memset(head2,-1,sizeof(head2));memset(head1,-1,sizeof(head1));memset(low,0,sizeof(low));memset(dfn,0,sizeof(dfn));memset(c,0,sizeof(c));memset(ins,false,sizeof(ins));memset(in,0,sizeof(in));memset(out,0,sizeof(out)); }int main() { // freopen("input.txt","r",stdin); // ios::sync_with_stdio(false);int w;cin>>w;int kase=0;while(w--){init();scanf("%d%d",&n,&m);for(int i=1;i<=m;i++){int u,v;scanf("%d%d",&u,&v);addedge1(u,v);}build();if(cnt==1){printf("Case %d: -1\n",++kase);continue;}LL ans=0;for(int i=1;i<=cnt;i++)if(in[i]==0||out[i]==0){int a=scc[i].size();int b=n-a;ans=max(ans,1LL*a*(a-1)+1LL*b*(b-1)+a*b-m);}printf("Case %d: %lld\n",++kase,ans);}return 0; }

?

總結(jié)

以上是生活随笔為你收集整理的HDU - 4635 Strongly connected(强连通缩点+数学+思维)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 久久嫩草 | 91精品国产自产在线观看 | 亚洲免费二区 | 成人手机在线免费视频 | 韩国一二三区 | 夜夜夜夜骑 | 欧美视频在线免费看 | 中文字幕网伦射乱中文 | 久久dvd | 精品国产露脸精彩对白 | japanese强行粗暴 | 欧洲性生活视频 | 日本做爰三级床戏 | 在线免费观看视频黄 | av电影在线观看 | 亚洲av无一区二区三区久久 | 天天操中文字幕 | 国产一级淫片a视频免费观看 | 色婷久久 | 国产在线伊人 | 人人舔 | 日韩xxxxxxxxx| 永久免费的网站入口 | 国产成人精品无码免费看81 | 久久久久久成人精品 | 五月婷婷影院 | 亚洲成人黄色片 | 精品国产黄色片 | 精品人妻无码一区二区 | 精品久久久久久久久久久国产字幕 | 久热国产精品 | 日本男人的天堂 | 国精产品一区一区三区免费视频 | 97麻豆视频 | 久久水蜜桃 | 亚洲欧美日韩免费 | 青青草原一区二区 | 好吊操妞| 国产色播 | 日韩精品一区二区免费视频 | 97无码精品人妻 | 欧美日韩一卡二卡三卡 | 亚洲天堂网在线视频 | 成人区人妻精品一区 | 久久人妻无码aⅴ毛片a片app | 国产又粗又硬视频 | 国产午夜大片 | www.xxx.国产| 青青青国产精品一区二区 | 在线不卡国产 | 一级黄色片国产 | 国产精品伦 | 日本一区二区三区久久久久 | 99久久久国产精品免费蜜臀 | 激情视频网站在线观看 | 一区二区三区四区五区在线视频 | 韩日免费av | 国产亚洲精品久久久久久 | 一区二区少妇 | xxxx.国产 | 精品久久久久久亚洲综合网站 | 亚洲第一页夜 | 久久久久久久亚洲精品 | 日本aa在线观看 | 日韩一区免费视频 | 国产精品久久久久久久免费 | 亚洲精品国产成人av在线 | 国产午夜视频 | 狠狠干中文字幕 | 欧美激情91| 国产成人精品综合久久久久99 | 传媒av在线 | 亚洲综合激情另类小说区 | 色撸撸在线 | 六月婷婷激情网 | 六月婷婷综合网 | 在线观看日韩一区二区 | 桃色网站在线观看 | 国产精品自拍电影 | 特黄特色大片bbbb | 亚洲中文字幕97久久精品少妇 | 一卡二卡三卡 | 阿v视频免费在线观看 | 黄色wwwww | 91欧美国产 | 国产精品麻豆欧美日韩ww | 人人搞人人插 | 狠操av| 午夜在线免费视频 | 国产一级淫片a视频免费观看 | 国产大学生自拍视频 | 久久激情片 | 亚洲国产一区在线 | 在线免费小电影 | 国产精品久久久久久影视 | 韩国视频一区 | 日韩激情一区二区三区 | 色婷婷精品视频 | 亚洲国产成人91porn |