Cod sursa(job #1993183)

Utilizator AvramDanielAvram Daniel AvramDaniel Data 22 iunie 2017 15:38:32
Problema Parcurgere DFS - componente conexe Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <bits/stdc++.h>
using namespace std;

int n,x,y,m,cnt;
vector <int> v[10000];
bool viz[10000];

void dfs(int x){
viz[x]=1;
for (int j=0;j<v[x].size();j++)
if (!viz[v[x][j]]) dfs(v[x][j]);
}
int main()
{
    freopen("dfs.in","r",stdin);
    freopen("dfs.out","w",stdout);
    cin>>n>>m;

    for (int i=1;i<=m;i++){
        cin>>x>>y;
        v[x].push_back (y);
        v[y].push_back (x);
    }
    for (int i=1;i<=n;i++)
    if (!viz[i]){
        ++cnt;
        dfs(i);
    }

    cout<<cnt;
    return 0;
}