并查集模板

并查集

int f[50050];
void init(void)
{
    for(int i=1;i<=n;i++)
        f[i]=i;
}
int fd(int x)
{
    return f[x]==x?x:fd[x]=fd(f[x]);
}
int uion(int x,int y)
{
    int fa=fd(x),fb=fd(y);
    if(fa!=fb)f[fa]=fb;
}
原文地址:https://www.cnblogs.com/weeping/p/5668709.html