Pagini recente » Profil ami_borbola | Cod sursa (job #517814) | Cod sursa (job #185898) | Cod sursa (job #810769) | Cod sursa (job #1694874)
#include<fstream>
using namespace std;
ifstream fi("dfs.in");
ofstream fo("dfs.out");
long long int n,m,viz[100005],x,y;
struct nod{
int info;
nod* back;
};
nod* v[100005];
void add(int i,int j){
nod* c=new nod;
c->info=j;
c->back=v[i];
v[i]=c;
}
void parcurgere(int i){
viz[i]=1;
for(nod* p=v[i];p;p=p->back)
if(!viz[p->info])
parcurgere(p->info);
}
int main(){
fi>>n>>m;
for(int i=1;i<=m;i++){
fi>>x>>y;
add(x,y);
add(y,x);
}
int k=0;
for(int i=1;i<=n;i++)
if(!viz[i]){
++k;
parcurgere(i);
}
fo<<k<<endl;
return 0;
}