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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

【UVA11324】The Largest Clique (SCC)

發(fā)布時(shí)間:2025/3/15 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【UVA11324】The Largest Clique (SCC) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題意:

  給一張有向圖G,求一個(gè)結(jié)點(diǎn)數(shù)最大的結(jié)點(diǎn)集,使得該結(jié)點(diǎn)中任意兩個(gè)結(jié)點(diǎn) u 和 v滿足:要么 u 可以到達(dá) v, 要么 v 可以到達(dá) u(u 和 v 相互可達(dá)也可以)。

?

分析:

  Tarjan求SCC縮點(diǎn),SCC的節(jié)點(diǎn)數(shù)為新點(diǎn)點(diǎn)權(quán),然后求DAG上權(quán)最大的的路徑。

?

代碼如下:

1 #include<cstdio> 2 #include<cstdlib> 3 #include<cstring> 4 #define Maxn 1010 5 #define Maxm 50010 6 7 struct node 8 { 9 int x,y,next; 10 }t[Maxm]; 11 12 int first[Maxn],dfn[Maxn],low[Maxn],sta[Maxn],scc[Maxn],sum[Maxn]; 13 bool bj[Maxn],bj2[Maxn],map[Maxn][Maxn]; 14 int cnt,sl,cl; 15 16 int mymin(int x,int y) {return x<y?x:y;} 17 int mymax(int x,int y) {return x>y?x:y;} 18 19 void ffind(int x) 20 { 21 dfn[x]=low[x]=++cnt; 22 sta[++sl]=x; 23 for(int i=first[x];i;i=t[i].next) 24 { 25 int y=t[i].y; 26 if(dfn[y]==0) 27 { 28 ffind(y); 29 low[x]=mymin(low[x],low[y]); 30 } 31 else if(scc[y]==0) low[x]=mymin(low[x],dfn[y]); 32 } 33 if(dfn[x]==low[x]) 34 { 35 cl++; 36 while(1) 37 { 38 int z=sta[sl--]; 39 scc[z]=cl; 40 sum[cl]++; 41 if(z==x) break; 42 } 43 } 44 } 45 46 int dfs(int x) 47 { 48 int ans=0; 49 bj[x]=1; 50 for(int i=1;i<=cl;i++) if(map[x][i]==1&&bj[i]==0) 51 ans=mymax(ans,dfs(i)); 52 ans+=sum[x]; 53 bj[x]=0; 54 return ans; 55 } 56 57 int main() 58 { 59 int T; 60 scanf("%d",&T); 61 while(T--) 62 { 63 int n,m,ans=0; 64 scanf("%d%d",&n,&m); 65 memset(first,0,sizeof(first)); 66 memset(dfn,0,sizeof(dfn)); 67 memset(sum,0,sizeof(sum)); 68 memset(bj,0,sizeof(bj)); 69 memset(map,0,sizeof(map)); 70 memset(scc,0,sizeof(scc)); 71 cnt=0;sl=0;cl=0; 72 for(int i=1;i<=m;i++) 73 { 74 int x,y; 75 scanf("%d%d",&t[i].x,&t[i].y); 76 t[i].next=first[t[i].x];first[t[i].x]=i; 77 } 78 for(int i=1;i<=n;i++) if(dfn[i]==0) ffind(i); 79 for(int i=1;i<=m;i++) if(scc[t[i].x]!=scc[t[i].y]) map[scc[t[i].x]][scc[t[i].y]]=1; 80 for(int i=1;i<=cl;i++) ans=mymax(ans,dfs(i)); 81 printf("%d\n",ans); 82 } 83 return 0; 84 } UVA11324

?

2016-03-17?16:54:20

轉(zhuǎn)載于:https://www.cnblogs.com/Konjakmoyu/p/5288068.html

總結(jié)

以上是生活随笔為你收集整理的【UVA11324】The Largest Clique (SCC)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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

主站蜘蛛池模板: 亚洲在线精品视频 | 欧美性受xxxx | 中日韩中文字幕一区二区 | 在线国产视频 | 欧美人与性动交a欧美精品 日韩免费高清视频 | 一级特黄aa大片 | 可以看的av网址 | 在线免费黄色网 | 成人入口| 最近中文字幕一区二区 | kendra lust free xxx| 91欧美激情一区二区三区 | 日韩av免费在线播放 | www.久久成人 | 丁香婷婷久久 | 久久久69 | 亚洲视频在线免费播放 | 日韩在线观看视频网站 | 日日摸天天爽天天爽视频 | 99热久久这里只有精品 | 女人床技48动态图 | 综合婷婷 | 免费看的黄色录像 | 日韩av手机在线播放 | 白丝久久 | 9·1·黄·色·视·频 | 激情综合丁香五月 | 国产又粗又黄又爽 | 波多野结衣办公室双飞 | 日韩精品久久久久久久酒店 | 久久精品免费电影 | 打屁屁日本xxxxx变态 | 国产三级漂亮女教师 | 亚洲免费网| 中文字幕免费视频 | www.com国产| 国产精品网站免费 | 色婷网 | 麻豆毛片| 国产视频亚洲 | 台湾综合色| 欧美a√在线 | 中文字幕第一 | 奇米影视在线观看 | 日韩成人一区 | 大尺度av | 国产91精品看黄网站在线观看 | 成人精品久久久 | 久久av高潮av无码av喷吹 | 天堂资源地址在线 | 不卡欧美 | 东京热无码av一区二区 | 粉嫩av一区二区三区 | 国产老熟女一区二区三区 | 日韩欧美日本 | 久久天天操 | 丁香花电影高清在线阅读免费 | 日本福利视频一区 | 亚洲第九十九页 | av十大美巨乳 | 人妻丰满熟妇av无码区不卡 | 91社区视频 | 国产三极片 | 欧美久久一区 | 精品黑人一区二区三区久久 | 岛国片在线免费观看 | 欧美日韩成人一区二区三区 | 末路1997全集免费观看完整版 | 久久免费视屏 | 国产毛片在线视频 | 国产欧美精品一区二区三区app | 91在线导航 | 欧美日韩一区二区三区不卡视频 | 天堂av2018| 久久久久久久久久久电影 | 97视频免费 | 国产精品成人免费一区二区视频 | 91大神精品在线 | 人人曰 | 久久男人天堂 | av在线综合网 | 国产视频导航 | 99re这里| 日韩福利电影在线 | 亚洲天堂网在线视频 | 在线视频久| 三级av在线播放 | 99热9| 国产69精品久久久久久久 | 在线毛片网 | 国产一级片免费在线观看 | 蜜臀少妇久久久久久久高潮 | 国产一区二区三区四区三区四 | 成人av网站在线 | 午夜福利电影 | 成人无码一区二区三区 | 亚洲天堂8 | 久久狠狠高潮亚洲精品 | 色老头在线一区二区三区 |