Cod sursa(job #2425535)

Utilizator cyber_ghSoltan Gheorghe cyber_gh Data 24 mai 2019 21:19:59
Problema Sortare topologica Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <bits/stdc++.h>

using namespace std;
const int MAXN = 50010;
int N, M;
vector<int> V[MAXN];
bool vis[MAXN];
vector<int> rs;

void dfs(int node) {
    vis[node] = true;
    for (auto it: V[node]) 
        if (!vis[it]) dfs(it);
    rs.push_back(node);
}

int main() {
    ifstream fin("sortaret.in");
    ofstream cout("sortaret.out");

    fin >> N >> M;
    for (int from, to; M--; ) {
        fin >> from >> to;
        V[from].push_back(to);
        //V[to].push_back(from);
    }

    dfs(1);

    reverse(rs.begin(), rs.end());
    for (auto it: rs) cout << it << " ";


    return 0;
}