Pagini recente » Cod sursa (job #377448) | Cod sursa (job #897548) | Cod sursa (job #2225292) | Cod sursa (job #1111147) | Cod sursa (job #894767)
Cod sursa(job #894767)
//
// dfs.cpp
// Parcurgerea DFS
//
// Created by Andrei Constantinescu on 2/26/13.
// Copyright (c) 2013 Andrei Constantinescu. All rights reserved.
//
#define dim 100001
#include <fstream>
#include <vector>
using namespace std;
vector<long> vec[dim];
long m,n,k, v[dim];
void dfs(long nod) {
v[nod]=1;
for(long i=0;i<vec[nod].size();i++)
if(v[vec[nod][i]]==0)
dfs(vec[nod][i]);
}
int main() {
ifstream f ("dfs.in", ios::in);
ofstream g ("dfs.out", ios::out);
f>>n>>m;
for(long i=1;i<=m;i++) {
long x,y;
f>>x>>y;
vec[x].push_back(y);
vec[y].push_back(x);
}
for(long i=1;i<=n;i++)
if(v[i]==0) {
dfs(i);
k++;
}
g<<k;
f.close();
g.close();
return 0;
}