const int Max=1e5; int fa[Max]; //父亲集合 int find(int a) { return fa[a]==a ? a:fa[a]=find(fa[a]); } //寻找 void merge(int a,int b) { int x=find(a),y=find(b); if(x!=y) fa[x]=y; } //合并集合