Cod sursa(job #1981972)

Utilizator NineshadowCarapcea Antonio Nineshadow Data 17 mai 2017 13:24:53
Problema Sortare topologica Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <bits/stdc++.h>
#define MAXN 50005
using namespace std;
ifstream in("sortaret.in");
ofstream out("sortaret.out");
int n,m,v[MAXN];
vector<int> G[MAXN];
list<int> sol;
void DFS(int nod)
{
    v[nod]=1;
    for(int i : G[nod])
        if(!v[i])
            DFS(i);
    sol.emplace_front(nod);
}
int main()
{
    in>>n>>m;
    while(m--)
    {
        int a,b;
        in>>a>>b;
        G[a].push_back(b);
    }
    for(int i=1;i<=n;++i)
        if(!v[i])DFS(i);
    for(int i: sol)
        out<<i<<' ';
    return 0;
}