合縱連橫(並查集)

2021-08-04 23:49:33 字數 1039 閱讀 3194

描述亂世天下,諸侯割據。每個諸侯王都有一片自己的領土。但是不是所有的諸侯王都是安分守己的,實力強大的諸侯國會設法吞併那些實力弱的,讓自己的領土面積不斷擴大。而實力弱的諸侯王為了不讓自己的領土被吞併,他會聯合一些其他同樣弱小的諸侯國,組成聯盟(聯盟不止乙個),來共同抵抗那些強大的諸侯國。 強大的諸侯國為了瓦解這些聯盟,派出了最優秀的間諜來離間他們,使一些諸侯國退出聯盟。最開始,每個諸侯國是乙個聯盟。

有兩種操作

1、u x y 表示x和y在同乙個聯盟。(0≤

x,y)

2、d x   表示x退出聯盟。

輸入

多組測試資料

第一行兩個數,n和m(1 ≤ n≤ 10^5, 1 ≤ m ≤10^5),分別表示諸侯國的個數和操作次數。

接下來有m行操作

輸出輸出聯盟的個數

樣例輸入

5 7

u 0 1

u 1 2

u 0 3

d 0u 1 4

d 2u 0 2

10 1

u 0 9

樣例輸出

case #1: 2

case #2: 9

解題鏈結(c語言ac**:

時間語言

結果記憶體

192c

accepted

3752

#include#includeint per[300000],v[300000],mark[300000],n;// 陣列開大,越大越好,否則出現runtimeerror

void init()//初始化

{ for(int i=0;i

NYOJ 合縱連橫(並查集刪點)

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 亂世天下,諸侯割據。每個諸侯王都有一片自己的領土。但是不是所有的諸侯王都是安分守己的,實力強大的諸侯國會設法吞併那些實力弱的,讓自己的領土面積不斷擴大。而實力弱的諸侯王為了不讓自己的領土被吞併,他會聯合一些其他同樣弱小的諸侯國,...

NYOJ 1022合縱連橫 並查集刪除演算法

合縱連橫 時間限制 1000 ms 記憶體限制 65535kb 難度 3 描述 亂世天下,諸侯割據。每個諸侯王都有一片自己的領土。但是不是所有的諸侯王都是安分守己的,實力強大的諸侯國會設法吞併那些實力弱的,讓自己的領土面積不斷擴大。而實力弱的諸侯王為了不讓自己的領土被吞併,他會聯合一些其他同樣弱小的...

NYOJ 1022 合縱連橫(並查集刪除操作)

合縱連橫 時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 亂世天下,諸侯割據。每個諸侯王都有一片自己的領土。但是不是所有的諸侯王都是安分守己的,實力強大的諸侯國會設法吞併那些實力弱的,讓自己的領土面積不斷擴大。而實力弱的諸侯王為了不讓自己的領土被吞併,他會聯合一些其他同樣弱小...