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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

POJ 1703 Find them, Catch them(并查集高级应用)

發(fā)布時間:2025/3/15 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 POJ 1703 Find them, Catch them(并查集高级应用) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

POJ 1703 Find them, Catch them(并查集高級應(yīng)用)

手動博客搬家:本文發(fā)表于20170805 21:25:49, 原地址https://blog.csdn.net/suncongbo/article/details/76735893

URL: http://poj.org/problem?id=1703

題目大意:本題即很經(jīng)典的“龍幫虎幫”問題。
有n個元素(n<=1e5),分布在兩個不同的集合里。
現(xiàn)在有M個語句(m<=1e5),每個語句共兩種:(1) 給定某兩個元素在不同的集合中。(2) 詢問兩個元素是否在同一集合中。對于是、否、無法確定的情況,分別輸出"In the same gang.", "In different gangs.", "Not sure yet."
思路分析:假如給定的是兩個元素在同一集合中,思路就很明確了。
但是現(xiàn)在給定的是兩個元素不同集合,而且已知僅有兩個集合,于是我們就可以想辦法將其轉(zhuǎn)化為兩元素同集合問題。
設(shè)有元素A,B, 則我們將每個元素分別“克隆”為A', B', 但將她們放入分別與本身不同的另外一個集合中。
同時,保證A和A', B和B', ..., 永遠不會同集合。
然后,假如已知A與B不同集合,則需將A和B', B和A'分別放入同一集合(union操作),假如已知A與B同集合,則需把A和B, A'和B'進行union一下即可。
最后,回答詢問時,有以下三種情況:

(1) A與B同集合,或A'與B‘同集合:In the same gang.

(2) A與B'同集合,或B與A'同集合:In different gangs.

(3) 其他:Not sure yet.
代碼呈現(xiàn):(Time:532MS ,Memory:960K ,Code:1005B)

#include<cstdio> using namespace std;const int MAXN = 1e5; int fa[MAXN*2+2]; int n,m;int find_fa(int u) {int i,j,k;i = u;while(fa[i] != i){i = fa[i];}fa[u] = i;j = u;while(j != i){k = fa[j];fa[j] = i;j = k;}return i; }int main() {int i,t,p,q,pp,qq,x,y;char ch[3];scanf("%d",&t);while(t--){scanf("%d%d",&n,&m);for(i=1; i<=2*n; i++) //Union-Find Sets init{fa[i] = i;}for(i=1; i<=m; i++) //calculate while reading{scanf("%s%d%d",ch,&x,&y);if(ch[0] == 'A'){p = find_fa(x);q = find_fa(y);pp = find_fa(x+n);qq = find_fa(y+n);if(p == q) printf("In the same gang.\n");else if(pp == q || p == qq) printf("In different gangs.\n");else printf("Not sure yet.\n");}else if(ch[0] == 'D'){p = find_fa(x);q = find_fa(y);pp = find_fa(x+n);qq = find_fa(y+n);if(pp != q) fa[pp] = q;if(qq != p) fa[qq] = p;}}}return 0; }

類似題目:poj 2492 A Bug's Life (幾乎一模一樣)
poj 1182 && luogu P2024 [NOI 2001]食物鏈 (一樣的思路,元素分成三類)
luogu P1525 [NOIP 2010提高組] 關(guān)押罪犯 (個人認為難度較大)

發(fā)表于 2018-12-26 21:53 suncongbo 閱讀(...) 評論(...) 編輯 收藏 刷新評論刷新頁面返回頂部

總結(jié)

以上是生活随笔為你收集整理的POJ 1703 Find them, Catch them(并查集高级应用)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 俄罗斯色片 | 亚洲国产精品毛片av不卡在线 | 国产成人无码精品久久久性色 | 永久精品视频 | 深夜老司机福利 | 国产制服丝袜在线 | 男男av网站 | 这里只有精品免费视频 | 91涩漫成人官网入口 | 瑟瑟视频在线免费观看 | 色交视频 | 日本中文字幕网站 | 无码国产精品一区二区色情男同 | 欧美日韩亚洲系列 | 性激烈视频在线观看 | 国产免费av一区二区三区 | 青青草视频观看 | 国产h视频在线观看 | 精品国产va久久久久久久 | 日本大尺度电影免费观看全集中文版 | 1024手机在线观看 | 五十路中文字幕 | 精品亚洲一区二区三区四区五区 | 含羞草一区二区 | 日本爱爱免费视频 | 国产成人三级在线观看视频 | 欧美狠狠干 | 91日韩精品 | 少妇毛片一区二区三区粉嫩av | 人妻少妇被猛烈进入中文字幕 | 色老头av | 成人激情视频在线播放 | 欧洲性生活片 | 国产视频一区三区 | 粉嫩av在线 | 人人模人人干 | 成年人看片网站 | 男人添女人下部高潮视频 | 三日本三级少妇三级99 | 亚洲tv在线观看 | 亚洲欧美日韩国产精品 | 色多多导航 | 久久国产视频一区 | 中文字幕第100页 | 原来神马电影免费高清完整版动漫 | 国产福利91 | 99mav | 操操操网站| 黑人巨大av | 精品少妇人妻av免费久久洗澡 | 国产精品91久久 | 中文字幕在线有码 | 美女久久久久久久久 | 亚洲日本欧美在线 | 99国产在线观看 | 神马午夜av | 亚洲av无码一区二区乱孑伦as | 丰满人妻一区二区三区大胸 | 亚洲男人天堂影院 | 欧美高跟鞋交xxxxxhd | av香蕉 | 免费黄网站在线观看 | 精品毛片一区二区三区 | 人人爱人人插 | 国产欧美久久久精品免费 | 在线观看黄色大片 | 亚洲日本护士毛茸茸 | 日韩成人综合 | 91沈先生在线 | 亚洲精品婷婷 | 国产成人在线播放视频 | av激情久久 | 亚洲图片中文字幕 | 国产精品成人久久久久久久 | 国产乱淫精品一区二区三区毛片 | 好吊一区二区三区 | 91丝袜呻吟高潮美腿白嫩在线观看 | 精品综合久久久 | 久久免费视屏 | 日本一区二区视频 | 亚洲码无人客一区二区三区 | 97在线超碰 | 日一区二区 | 欧美黄一级 | 国产乱色精品成人免费视频 | 午夜视频网址 | 羞羞的软件 | 91新网站 | 特黄特色大片免费播放器使用方法 | 人人干人人干 | 波多野结衣1区2区3区 | 国产一区二区 | 日日插插 | 国产精品亚洲五月天丁香 | 国产在线无码精品 | www伊人网 | 国产日韩欧美视频在线观看 | av动漫网| 91综合国产 |