并查集数组模板

发布时间 2024-01-11 11:27:58作者: sunyafei

并查集

const int MX=1e5+5;
int Fa[MX];

//初始化
void Init(int n){
  for(int i=1;i<=n;i++){
    Fa[i]=i;
  }
}

//查询
int Find(int x){
  return Fa[x]==x?x:Fa[x]=Find(Fa[x]);
}

//合并
void Union(int i,int j){
  int x=Find(i),y=Find(j);
  Fa[Find(x)]=Find(y);
}