Pagini recente » Cod sursa (job #364744) | Cod sursa (job #2336936) | Cod sursa (job #2490072) | Cod sursa (job #2316573) | Cod sursa (job #2298379)
#include <bits/stdc++.h>
#define NMAX 100003
using namespace std;
ifstream f ("dfs.in");
ofstream g ("dfs.out");
vector <int> q[NMAX];
int i , j , n , m , x , y ;
bool viz[NMAX] ;
int Sol = 0 ;
void dfs(int s)
{
viz[s] = true ;
int length = q[s].size() ;
for (int j = 0 ; j < length ; j ++)
{
if (viz[q[s][j]] != true) dfs(q[s][j]);
}
}
int main()
{
f >> n >> m ;
for (i = 1 ; i <= m ; i++)
{
f >> x >> y;
q[x].push_back(y) ; //x->y
q[y].push_back(x) ; //y->x
//Graf NEORIENTAT x <-> y
}
for (i = 1 ; i <= n ; i ++)
{
if (viz[i] != true)
{Sol ++ ;dfs(i);}
}
g << Sol ;
return 0 ;
}