乙個找親戚遊戲,引發了一場演算法的學習 並查集

2021-09-06 15:05:54 字數 771 閱讀 3025

題目描述:

若某個家族人員過於龐大,要判斷兩個是否是親戚,確實還很不容易,給出某個親戚關係圖,求任意給出的兩個人是否具有親戚關係。

規定:x和y是親戚,y和z是親戚,那麼x和z也是親戚。

如果x,y是親戚,那麼x的親戚都是y的親戚,y的親戚也都是x的親戚。

輸入:第一行:三個整數n,m,p,(n< =5000,m< =5000,p< =5000),分別表示有n個人,m個親戚關係,詢問p對親戚關係。

以下m行:每行兩個數mi,mj,1< =mi,mj< =n,表示mi和mj具有親戚關係。

接下來p行:每行兩個數pi,pj,詢問pi和pj是否具有親戚關係。

輸出:p行,每行乙個』yes』或』no』。表示第i個詢問的答案為「具有」或「不具有」親戚關係。

講解:   這是一場簡單的找  father 的遊戲,如果兩個小夥伴,有乙個共同的爹,他們兩個就有親戚關係了;也反映出了,並查集在解決問題方面的巨大潛能;

1 #include2 #include3 #include4 #include5

using

namespace

std;

6int father[50002

],a,b,m,n,p;

7int find(int

x)12

return

father[x];13}

14int

main()

23for(int i=1;i<=p;i++)

30return0;

31 }

一場大雨引發的思考

昨日傍晚時分京城突降大雨,恰逢與同事去公司附近學校食堂吃晚飯,於是我一路狂奔,不過同事倒是淡定,慢慢悠悠,我就問他你不怕挨淋啊,他回答道,走得快走的慢,距離一樣,淋的雨一樣多啦。這回答讓我一愣,心裡有些犯嘀咕。等到食堂開吃時,我的程式設計師病就犯了 打個傘就不淋了,非要鑽牛角尖。於是我再次提出這個問...

PHP佇列 選舉引發的一場血案

花果山選舉引發的一場血案 自花果山美猴王齊天大聖孫悟空被如來壓在五指山下,花果山無人管理,受盡周邊惡霸的欺負,長老們意識到花果山不能一日無主,於是決定選舉一位臨時大王,由於猴子猴孫水平都不相上下,推選誰都難以平眾憤,長老們無計可施 乙隻聰明的猴子急中生智,提議 猴孫們圍成一圈,按順時針順序1 n編號...

一場娛樂節目引發的腦補

今天看了乙個 節目叫什麼偶像,關於節目本身我不怎麼了解,我只想對我看到的第二期節目表達下自己的看法。第二期的節目內容是中國的四名隊員和南韓的四名隊員,兩兩組隊,然後進行pk,獲得票數最多的組合奪冠。我分別來介紹下我關注到的地方 第一組 薛之謙 宋閔浩 直到最後的表演,兩位都沒有一塊搭檔表演過。原因是...