Pagini recente » Cod sursa (job #2391758) | Cod sursa (job #1014775) | Cod sursa (job #898922) | Cod sursa (job #2774504) | Cod sursa (job #2570121)
#include <cstdio>
#include <iostream>
#include <vector>
using namespace std;
vector<int> v[100000];
int st[100000];
void dfs (int a) {
st[a]=1;
for (int b=0;b<v[a].size();b++) {
if (st[v[a][b]]==0) {
dfs(v[a][b]);
}
}
}
int main()
{
int a, n, m, b, i;
FILE *fin, *fout;
fin=fopen("dfs.in" ,"r");
fout=fopen("dfs.out" ,"w");
fscanf(fin, "%d%d" ,&n ,&m);
for (i=0;i<m;i++) {
fscanf(fin, "%d%d" ,&a ,&b);
v[a].push_back(b);
v[b].push_back(a);
}
int t=0;
for (i=1;i<=n;i++) {
if (st[i]==0) {
t++;
dfs(i);
}
}
fprintf(fout, "%d" ,t);
return 0;
}