Cod sursa(job #2424747)

Utilizator IulianaRusuIuliana Rusu IulianaRusu Data 23 mai 2019 20:05:03
Problema Sortare topologica Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.79 kb
#include <iostream>
#include <fstream>
#include <vector>

using namespace std;

ifstream fin("sortaret.in");
ofstream fout("sortaret.out");

vector <int> graph_Sort_dfs[100001];
int vizitat[50001];

void DFS(int nod) {
    cout << nod << " ";
    vizitat[nod] = 1;
    int lim = graph_Sort_dfs[nod].size();
    for (int i = 0; i < lim; i++) {
        int vecin = graph_Sort_dfs[nod][i];
        if (vizitat[vecin] == 0) {

            DFS(vecin);
        }

    }


}

int main() {
    int N, M;
    fin >> N>>M;
    int x, y;
    for (int i = 1; i <= M; i++) {
        fin >> x>>y;
        graph_Sort_dfs[x].push_back(y);
        graph_Sort_dfs[y].push_back(x);
    }
    for (int i = 1; i <= N; i++) {
        if (vizitat[i] == 0) {
            DFS(i);
        }
    }
    fout << endl;
    
    return 0;
}