Pagini recente » Cod sursa (job #802819) | Cod sursa (job #590204) | Cod sursa (job #2696796) | Cod sursa (job #1988810) | Cod sursa (job #152923)
Cod sursa(job #152923)
#include<stdio.h>
#include<vector>
using namespace std;
#define pb push_back
#define lg 100005
int n, m, x, y, nr[lg], fst[lg], nrc, i;
vector <int> v[lg];
void df(int nod){
int i;
fst[nod] = 1;
for (i = 0; i < nr[nod]; i ++)
if (!fst[v[nod][i]])
df(v[nod][i]);
}
int main()
{
freopen("dfs.in", "rt", stdin);
freopen("dfs.out", "wt", stdout);
scanf("%d%d", &n, &m);
for (i = 1; i <= m; i ++){
scanf("%d%d", &x, &y);
nr[x] ++;
v[x].pb(y);
nr[y] ++;
v[y].pb(x);
}
for (i = 1; i <= n; i ++)
if (!fst[i]){
nrc ++;
df(i);
}
printf("%d\n", nrc);
return 0;
}