摘要: 呵呵,基本的并查集,合并之后,判断集合的个数即可#include<iostream>#include<algorithm>#define maxn 1010using namespace std;int f[maxn],n,m;void init(){ for(int i=0;i<maxn;i++) f[i]=i;}int find(int x){ if(x==f[x]) return x; f[x]=find(f[x]); return f[x];}//路径压缩void Union(int x,int y){ int a=find(x); int b=find( 阅读全文
posted @ 2011-11-05 22:21 枕边梦 阅读(351) 评论(0) 推荐(0) 编辑