洛谷P3367 模板 並查集

2022-05-31 15:33:09 字數 801 閱讀 6985

原題如題,現在有乙個並查集,你需要完成合併和查詢操作。

第一行包含兩個整數n、m,表示共有n個元素和m個操作。

接下來m行,每行包含三個整數zi、xi、yi

當zi=1時,將xi與yi所在的集合合併

當zi=2時,輸出xi與yi是否在同一集合內,是的話輸出y;否則話輸出n

如上,對於每乙個zi=2的操作,都有一行輸出,每行包含乙個大寫字母,為y或者n

4 7

2 1 2

1 1 2

2 1 2

1 3 4

2 1 4

1 2 3

2 1 4

nyn

y

時空限制:1000ms,128m

資料規模:

對於30%的資料,n<=10,m<=20;

對於70%的資料,n<=100,m<=1000;

對於100%的資料,n<=10000,m<=200000。

並查集的模板題

不解釋了,直接看注釋

1 #include2

using

namespace

std;

3int n,m,a[10001];4

int getf(int i)//

路徑壓縮

8void merge(int x,int y)

14bool inquire(int x,int y)

17int

main()

1832

return0;

33 }

並查集模板 洛谷P3367

並查集是一種樹型的資料結構,用於處理一些不相交集合 disjoint sets 的合併及查詢問題。常常在使用中以森林來表示。集就是讓每個元素構成乙個單元素的集合,也就是按一定順序將屬於同一組的元素所在的集合合併。初始化 把每個點所在集合初始化為其自身。通常來說,這個步驟在每次使用該資料結構時只需要執...

洛谷P3367 模板 並查集

如題,現在有乙個並查集,你需要完成合併和查詢操作。第一行包含兩個整數n m,表示共有n個元素和m個操作。接下來m行,每行包含三個整數zi xi yi 當zi 1時,將xi與yi所在的集合合併 當zi 2時,輸出xi與yi是否在同一集合內,是的話輸出y 否則話輸出n 如上,對於每乙個zi 2的操作,都...

洛谷P3367 模板 並查集

如題,現在有乙個並查集,你需要完成合併和查詢操作。輸入格式 第一行包含兩個整數n m,表示共有n個元素和m個操作。接下來m行,每行包含三個整數zi xi yi 當zi 1時,將xi與yi所在的集合合併 當zi 2時,輸出xi與yi是否在同一集合內,是的話輸出y 否則話輸出n 輸出格式 如上,對於每乙...