PTA 7 2 朋友圈(25 分)

2021-08-21 14:17:51 字數 936 閱讀 1440

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

輸入的第一行包含兩個正整數n(≤30000)和m(≤1000),分別代表學校的學生總數和俱樂部的個數。後面的m行每行按以下格式給出1個俱樂部的資訊,其中學生從1~n編號:

第i個俱樂部的人數mi(空格)學生1(空格)學生2 … 學生mi

輸出給出乙個整數,表示在最大朋友圈中有多少人。

7 4

3 1 2 3

2 1 4

3 5 6 7

1 6

4
最普通的並查集求解問題

**如下:

#include using namespace std;

typedef struct node

ufstree;

void make_set(ufstree t, int n)

}int find_set(ufstree t, int x)

void union(ufstree t, int x, int y)

}int main()

} int max[30001] = ;

for (int k = 1; k <= n; k++)

max[find_set(p, k)]++;

int ma = 0;

for (int p = 1; p <= n; p++)

ma = ma > max[p] ? ma : max[p];

cout << ma;

return 0;

}

7 2 朋友圈 (25 分)

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

7 2 朋友圈 25 分

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

PTA 朋友圈(25 分)

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