Pagini recente » Cod sursa (job #531613) | Cod sursa (job #81974) | Cod sursa (job #768453) | Cod sursa (job #410651) | Cod sursa (job #2345205)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("dfs.in");
ofstream cout("dfs.out");
int n, m, k;
vector<int> a[100010];
bool viz[100010];
void dfs(int nod) {
viz[nod] = 1;
for(int i=0; i<a[nod].size(); i++)
if(!viz[a[nod][i]])
dfs(a[nod][i]);
}
int main() {
cin >> n >> m;
while(m--) {
int x, y;
cin >> x >> y;
a[x].push_back(y);
a[y].push_back(x);
}
for(int i=1; i<=n; i++)
if(!viz[i])
k++, dfs(i);
cout << k;
return 0;
}