并查集板子
build方法
void build()
{
for(int i=1;i<=maxn;i++)father[i]=i;
}
find方法
int find(int x)
{
if(x!=father[x])
{
father[x]=find(father[x]);
}
return father[x];
}
merge方法
void merge(int x,int y)
{
if(find(x)!=find(y))
{
father[find(x)]=find(y);
}
}

浙公网安备 33010602011771号