fzu2192,種類並查集

2022-04-08 19:39:56 字數 492 閱讀 1029

題意是中文的,就不說了;

這裡用到種類並查集,分別用1-n;n-2n,2n-3n代表城市,服務,人;

然後要注意這幾點:

1:不要用rank陣列了,因為連邊要自己控制。

2:在unite函式的時候,比較一下x和y,控制把大的連到小的上面,這樣之後尋味的時候,find()一定會找到最小的(城市),然後如果大於n,就說明他沒有連到城市,輸出0;

**如下:

#include

#include

#include

#include

#include

#include

using namespace std;

const int n = 300000;

int par[999999], last[999999];

void init(int n)

printf("%d\n", temp);

} }return 0;

}

poj1182 種類並查集

有點坑的題目,不過做做絕對利大於弊,尤其在你不斷wa到哭的時候,大神忽略這句 0 兩者相同級別 1 被根節點吃 2 吃根節點 原因 對於輸入的關係1和2,減1之後便是輸入的兩個量之間的關係 其實是寫完題目之後看解題報告發現這規律的 include include using namespace st...

hdu1829(種類並查集)

題意 給你n個蟲,輸入m行a,b,表示a和b是異性,要你判斷是否有同性戀 這是一道種類並查集題,對於乙個並查集新手的我還是覺得有點難度的。種類並查集的關鍵 當前節點到他的根節點的距離 在這道題中,如果到根節點的距離是奇數說明是異性,偶數說明是同性,即同性戀,利用rank陣列記錄到根節點的距離,比如r...

POJ 1703 種類並查集

題意 乙個城市裡面有兩個黑幫 有兩種操作 a ask 詢問 x,y的關係 d x,y是一夥的 很明顯是種類並查集 於是就yy一下 relationsi 表示與父節點的關係 fatheri 記錄父節點 在合併和查詢root的時候 relations 更新注意一下就可以了 include include...