藍橋杯 並查集 朋友圈大小

2021-08-15 16:00:56 字數 584 閱讀 8490

第一行:乙個整數 n(n\leq 5000)n(

n≤50

00),表示有 n

n對朋友認識。

接下來 n

n 行:每行輸入兩個名字。表示新認識的兩人的名字,用空格隔開。(名字是乙個首字母大寫後面全是小寫字母且長度不超過 20 的串)。

對於每一對新認識的朋友,輸出合併以後的朋友圈的大小。

樣例輸入

3

fred barney

barney betty

betty wilma

樣例輸出

2

34

#include#includeusing namespace std;

#includeint size[5010];

int father[5010];

mapm; //結合題意,採用這樣的對應。

int get(int a)

void add(int a,int b)

}int main()

int pos=1;

while(n--)

,只會讓dist[0]=1,其他還是預設為0,就很煩)

PAT 朋友圈(並查集)

某學校有n個學生,形成m個俱樂部。每個俱樂部裡的學生有著一定相似的興趣愛好,形成乙個朋友圈。乙個學生可以同時屬於若干個不同的俱樂部。根據 我的朋友的朋友也是我的朋友 這個推論可以得出,如果a和b是朋友,且b和c是朋友,則a和c也是朋友。請編寫程式計算最大朋友圈中有多少人。輸入的第一行包含兩個正整數n...

5 9 朋友圈 (並查集)

某學校有n個學生,形成m個俱樂部。每個俱樂部裡的學生有著一定相似的興趣愛好,形成乙個朋友圈。乙個學生可以同時屬於若干個不同的俱樂部。根據 我的朋友的朋友也是我的朋友 這個推論可以得出,如果a和b是朋友,且b和c是朋友,則a和c也是朋友。請編寫程式計算最大朋友圈中有多少人。輸入的第一行包含兩個正整數n...

朋友圈 簡單並查集

班上有 n 名學生。其中有些人是朋友,有些則不是。他們的友誼具有是傳遞性。如果已知 a 是 b 的朋友,b 是 c 的朋友,那麼我們可以認為 a 也是 c 的朋友。所謂的朋友圈,是指所有朋友的集合。給定乙個 n n 的矩陣 m,表示班級中學生之間的朋友關係。如果mi 1,表示已知第 i 個和 j 個...