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

2021-07-15 03:47:00 字數 910 閱讀 8076

合縱連橫

時間限制:1000 ms | 記憶體限制:65535 kb

難度:3

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

有兩種操作

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

#include

#include

#include

#include

#include

using

namespace

std;

#define ll long long

#define inf 0x3f3f3f3f

const

int maxn=1000005;

int n,m,f[maxn],tot;

int ok[maxn],rep[maxn];

int find(int x)

void union(int x,int y)

}void del(int x)

int main()

else

}int ans=0;

memset(ok,0,sizeof(ok));

for(int i=0;iint t=find(rep[i]);

if(!ok[t])

}printf("case #%d: %d\n",++kase,ans);

}return

0;}

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

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

NYOJ1022合縱連橫(支援刪除操作的並查集)

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

合縱連橫(並查集)

描述亂世天下,諸侯割據。每個諸侯王都有一片自己的領土。但是不是所有的諸侯王都是安分守己的,實力強大的諸侯國會設法吞併那些實力弱的,讓自己的領土面積不斷擴大。而實力弱的諸侯王為了不讓自己的領土被吞併,他會聯合一些其他同樣弱小的諸侯國,組成聯盟 聯盟不止乙個 來共同抵抗那些強大的諸侯國。強大的諸侯國為了...