POJ2236 簡單並查集

2021-08-26 12:32:46 字數 570 閱讀 8584

poj2236:

題目大意:

有很多臺電腦,兩台電腦距離在d之內才能通訊,或者通過第三台電腦進行通訊。判斷兩台電腦能否通訊。

0表示修復,s表示測試。

題解:這是簡單的並查集,s的時候只要判斷兩台電腦是不是在乙個集合中就行,0將兩個點合併的時候注意要判斷距離是不是小於d。

#include #include#includeusing namespace std;

#define maxn 1008

struct node

;int n,d;

node p[maxn];

bool used[maxn];

void init(int num)

}int finds(int x)

void unions(node p1,node p2)

int main()

init(n);

char m[4];

int x,y;

while(cin>>m)

}else

}return 0;

}

poj 2236 並查集模板

題意 n台壞了的計算機放置在n個不同的位置,若兩台計算機的距離不超過d且兩台計算機都已修好,那麼這兩台計算機可以通訊。間接通訊也叫做通訊。現進行若干次操作,修計算機或查詢兩台計算機是否可通訊。查詢時判斷時候可通訊。題解 並查集 1.這個就是並查集模板題。2.憑藉著以往的記憶寫了乙個先是wa後是t,看...

poj2236 並查集板子題

題目大意 給你n臺電腦和乙個距離d,然後給你n臺電腦的座標xi,yi,0 xi,yi 10000,d 20000,給你最多3e5次查詢,每次查詢中,o x 表示修復了x號電腦,s x y 表示詢問x和y是否可以通訊,返回查詢結果 如果兩台電腦距離在d之內,那麼兩台電腦可以相連 題解 一共3e5次查詢...

poj 2236 並查集 計算機網路

題意 給出n,d代表有n個計算機,還有可以建立連線的限制距離d。o 後面的數字代表了維修好的計算機,s 後面的兩個數字用來判斷,這兩個計算機是否建立的連線。思路 並查集,每修好乙個計算機,進行標記,同時列舉所有計算機,在維修好的計算機中,找出可以建立連線的計算機,進行合併。include inclu...