标签:
直接套算法就好
#include <stdio.h> #include <iostream> using namespace std; int fa[1005]; int Find(int x){ return fa[x]==x?x:fa[x]=Find(fa[x]); } bool Merge(int u,int v){ int fu=Find(u); int fv=Find(v); if(fu!=fv){ fa[fv]=fu; return true; } else return false; } int main(){ int t,u,v,m,n; scanf("%d",&t); while(t--){ scanf("%d%d",&m,&n); for(int i=1;i<=m;i++){ fa[i]=i; } for(int i=0;i<n;i++){ scanf("%d%d",&u,&v); if(Merge(u,v))m--; } printf("%d\n",m); } return 0; }
标签:
原文地址:http://www.cnblogs.com/hnzyyTl/p/4710372.html