Cod sursa(job #560723)

Utilizator mihaimoldovanMihai Moldovan mihaimoldovan Data 18 martie 2011 17:32:08
Problema Parcurgere DFS - componente conexe Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include<vector>
#include<fstream>
#include<algorithm>

#define nn 100001
#define push_back pb
vector<int>g[nn];
int n,m,nrc,v[nn];

void citire(){
    ifstream fin("dfs.in");
    fin>>n>>m;
    for(;m;--m){
        fin>>a>>b;
        g[a].pb(b);
    }
}
void afisare(){
    FILE *f=fopen("dfs.out","w");
    fprintf(f,"%d",nrc);
}
void dfs(int arg){//atetie ca e recursiv
    v[arg]=1;
    for(int i=0;i<g[arg].size();++i){
        dfs(g[arg][i]);
    }
}
int main(){
    citire();
    for(int i=0;i<=n;++i){
        dfs(i);
        ++nrc;
    }
    afisare();
    return 0;
}