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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

[hihoCoder]无间道之并查集

發布時間:2024/9/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [hihoCoder]无间道之并查集 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目大意:

#1066 : 無間道之并查集

時間限制:20000ms 單點時限:1000ms 內存限制:256MB

描述

這天天氣晴朗、陽光明媚、鳥語花香,空氣中彌漫著春天的氣息……額,說遠了,總之,小Hi和小Ho決定趁著這朗朗春光出去玩。

但是剛剛離開居住的賓館不久,抄近道不小心走入了一條偏僻小道的小Hi和小Ho就發現自己的前方走來了幾個彪形大漢,定睛一看還都是地地道道的黑人兄弟!小Hi和小Ho這下就慌了神,撿肥皂事小,這一身百把來斤別一不小心葬身他鄉可就沒處說去了。

就在兩人正舉足無措之時,為首的黑叔叔從懷里掏出了一件東西——兩張花花綠綠的紙,分別遞給了小Hi和小Ho。

小Hi和小Ho接過來,只見上面寫道(譯為中文):“本地最大的幫派——青龍幫,誠邀您的加入!”下面還詳細的列出了加入青龍幫的種種好處。

于是兩人略感心安,在同黑叔叔們交談一番之后,已是均感相見恨晚。同時,在小Hi和小Ho表示自己不日便將回國之后,黑叔叔們也沒有再提加入幫派之事,但是那為首的黑叔叔思索一會,開口道(譯為中文):“我現在有一個難題,思索了很久也沒法子解決,既然你們倆都是高材生,不如來幫我看看。”

小Hi和小Ho點了點頭表示沒問題,于是黑叔叔繼續說道:“這個問題是這樣的,我們幫派最近混進了許多警察的臥底,但是在我們的調查過程中只能夠知道諸如‘某人和另一個人是同陣營的’這樣的信息,雖然沒有辦法知道他們具體是哪個陣營的,但是這樣的信息也是很重要的,因為我們經常會想要知道某兩個人究竟是不是同一陣營的?!?/p>

小Hi和小Ho贊同的點了點頭,畢竟無間道也都是他們看過的。

黑叔叔接著說道:“于是現在問題就來了,我希望你們能寫出這樣一個程序,我會有兩種操作,一種是告訴它哪兩個人是同一陣營的,而另一種是詢問某兩個人是不是同一陣營的……既然你們就要回國了,不如現在就去我們幫派的總部寫好這個程序再走把。”

為了生命安全與……小Hi和小Ho都不得不解決這個問題!那么他們究竟從何下手呢?

提示:說起來其實就是不斷的合并集合嘛~

輸入

每個測試點(輸入文件)有且僅有一組測試數據。

每組測試數據的第1行為一個整數N,表示黑叔叔總共進行的操作次數。

每組測試數據的第2~N+1行,每行分別描述黑叔叔的一次操作,其中第i+1行為一個整數op_i和兩個由大小寫字母組成的字符串Name1_i, Name2_i,其中op_i只可能為0或1,當op_i=0時,表示黑叔叔判定Name1_i和Name2_i是同一陣營的,當op_i=1時,表示黑叔叔希望知道Name1_i和Name2_i是否為同一陣營的。

對于100%的數據,滿足N<=10^5, 且數據中所有涉及的人物中不存在兩個名字相同的人(即姓名唯一的確定了一個人),對于所有的i,滿足Name1_i和Name2_i是不同的兩個人。

輸出

對于每組測試數據,對于黑叔叔每次op_i=1的操作,輸出一行,表示查詢的結果:如果根據已知信息(即這次操作之前的所有op_i=0的操作),可以判定詢問中的兩個人是同一陣營的,則輸出yes,否則輸出no。

樣例輸入
10 0 Steven David 0 Lcch Dzx 1 Lcch Dzx 1 David Dzx 0 Lcch David 0 Frank Dzx 1 Steven Dzx 1 Frank David 0 Steven Dzx 0 Dzx Frank
樣例輸出
yes no yes yes

解題思路:
其實就是并查集的應用,先合并,在給你兩個點,判斷它們是否有公共祖先,這題主要就是點的處理,由于得把字符串轉化成點:
map<string,int> mm;//用map來實現字符串到數字的轉化
int tot=0;//初始為0
int trace(string str)
{
??? if (mm.count(str)) return mm[str];//找到就直接返回
??? else//找不到就++
??? {
??????? mm[str] = ++tot;
??????? return tot;
??? }
}

AC代碼:

#include<iostream> #include<string> #include<map> using namespace std; map<string,int> mm; int tot=0,father[100005]; int trace(string str) {if (mm.count(str)) return mm[str];else{mm[str] = ++tot;return tot;} } int find1(int x) {while(x!=father[x])x=father[x];return x; } void Union(int x,int y) {if(find1(x)!=find1(y))father[find1(x)]=find1(y); }int main() {int n,op,x,y;string str1,str2;while(cin>>n){for(int i=0;i<=n;i++) father[i]=i;while(n--){cin>>op>>str1>>str2;x=trace(str1),y=trace(str2);if(op) cout<<((find1(x)==find1(y))?"yes":"no")<<endl;else Union(x,y);}}return 0; }

?

轉載于:https://www.cnblogs.com/gaojupeng/p/4439489.html

總結

以上是生活随笔為你收集整理的[hihoCoder]无间道之并查集的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 国产精品无码av在线有声小说 | 黄色污污网站 | 午夜男人av | 在线视频免费观看你懂的 | 99成人在线观看 | 中文字幕免费高清 | 精品久久久久久久久久久久久 | 免费观看美女裸体网站 | a∨色狠狠一区二区三区 | 亚洲熟妇av日韩熟妇在线 | 国产精品视频网 | 亚洲精品乱码久久久久99 | 在线看黄色片 | 国产高清一区在线观看 | 双性懵懂美人被强制调教 | 夜夜躁狠狠躁日日躁 | 国产精品一区二区性色av | 国产精品日韩专区 | 日本一级三级三级三级 | 国产吞精囗交久久久 | 日韩欧美视频在线免费观看 | 老司机午夜剧场 | 亚洲午夜激情视频 | 日本成人激情视频 | 日本在线 | 亚洲激情文学 | 亚洲久久在线观看 | 日本三级视频 | 欧美特级一级片 | aaa日韩| 熟女视频一区二区三区 | 性日本xxx | 日本亚洲免费 | 黄色精品| 色老头一区二区三区 | 国产第一区第二区 | 亚洲天堂日韩在线 | 国产在线播放一区二区三区 | 午夜精品美女久久久久av福利 | 禁漫天堂在线 | 欧美中文字幕在线视频 | 日本免费看 | 国产一区二区三区免费观看视频 | 先锋影音av在线资源 | 曰曰操| 婷婷五月情 | 美女一级黄色片 | 欧美一区二区三区黄色 | 中文字幕不卡在线播放 | 午夜免费福利小电影 | 日韩91av| 91精品久久久久久久 | 福利免费视频 | 免费av在 | 久热一区 | 亚洲av无码专区国产乱码不卡 | 69视频在线免费观看 | 国产 中文 字幕 日韩 在线 | 久久夜色网 | 中文字幕亚洲一区二区三区 | 草草影院国产第一页 | 男人透女人免费视频 | 波多野结衣av在线播放 | 亚洲成人日韩在线 | 天天躁日日躁狠狠躁免费麻豆 | 精品一区二区中文字幕 | 国产男男gay体育生网站 | 一区二区三区av夏目彩春 | 一区二区三区久久久 | 成人福利在线免费观看 | 欧美亚洲第一区 | 国产精品视频导航 | 一区二区三区欧美视频 | 日日操av | 五月婷婷爱 | 日韩成人精品 | 污污网址在线观看 | 成人毛片软件 | 蜜桃av一区二区三区 | 91黄在线观看 | 97狠狠干| 亚洲我射av | 国内精品在线观看视频 | 日本中文字幕观看 | 在线观看91| 国产欧美自拍 | 清纯唯美第一页 | 午夜福利啪啪片 | 亚洲天堂av片 | 久久福利网 | 日韩精品视频在线免费观看 | 狠狠入 | 亚洲av永久中文无码精品综合 | 影音先锋成人资源站 | 日韩精品1 | 亚洲第9页 | 不许穿内裤随时挨c调教h苏绵 | 91大奶| 亚洲精品一区二区三区四区五区 |