Pagini recente » Cod sursa (job #1679454) | Autentificare | Cod sursa (job #2107466) | Cod sursa (job #201713) | Cod sursa (job #2425239)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
const int N = 100005;
vector <int> mat[N];
vector <bool> viz(N, 0);
void dfs( int x, int n ){
if ( mat[x].empty() )
return;
viz[x] = 1;
for ( auto i : mat[x] )
if ( ! viz[i] )
dfs(i, n);
}
int main() {
int m, n, i, nr = 0, x, y;
//ifstream in ("date.in");
ifstream in("dfs.in");
in >> n >> m;
for ( i = 1; i <= m; i++ ){
in >> x >> y;
mat[x].push_back (y);
mat[y].push_back (x);
}
in.close();
for ( i = 1; i <= n; i++ )
if ( !viz[i] ){
dfs( i, n );
nr++;
}
//ofstream out ("date.out");
ofstream out ("dfs.out");
out << nr;
out.close();
return 0;
}