Cod sursa(job #1981971)

Utilizator NineshadowCarapcea Antonio Nineshadow Data 17 mai 2017 13:23:15
Problema Sortare topologica Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <bits/stdc++.h>
#define MAXN 50000
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;
}