Pagini recente » Cod sursa (job #1463697) | Cod sursa (job #2188083) | Cod sursa (job #1217001) | Cod sursa (job #898587) | Cod sursa (job #2650983)
#include <bits/stdc++.h>
#define nmax 100005
using namespace std;
ifstream in("dfs.in");
ofstream out("dfs.out");
int N,M,k;
bool Vizitat[nmax];
vector <int> Muchii[nmax];
void dfs(int Nod)
{ Vizitat[Nod]=true;
for(size_t i=0;i<Muchii[Nod].size();i++)
{ int Vecin=Muchii[Nod][i];
if(!Vizitat[Vecin])
dfs(Vecin);
}
}
void citire()
{ in>>N>>M;
for(int i=1;i<=M;i++)
{ int x,y;
in>>x>>y;
Muchii[x].push_back(y);
Muchii[y].push_back(x);
}
}
int main()
{ citire();
dfs(1);
k++;
for(int i=1;i<=N;i++)
{ if(!Vizitat[i])
{dfs(i);
k++;
}
}
out<<k;
in.close();
out.close();
return 0;
}