Cod sursa(job #2313361)

Utilizator mateialexandru25Matei Alexandru mateialexandru25 Data 6 ianuarie 2019 18:42:18
Problema Sortare topologica Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <bits/stdc++.h>
#define N 50005
using namespace std;

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

vector <int> G[N];
int n,m;
bool viz[N];

void Read()
{  int i,x,y;
   fin>>n>>m;
   for(i=1;i<=m;++i)
     { fin>>x>>y;
       G[x].push_back(y);
     }
   fin.close();
}

void DFS(int x)
{  viz[x]=1;
   for(int i=0;i<G[x].size();++i)
       if(!viz[G[x][i]]) DFS(G[x][i]);
   fout<<x<<" ";
}

void Sortare_Topologica()
{  int i;
   for(i=1;i<=n;++i)
     if(!viz[i]) DFS(i);
}

int main()
{   Read();
    Sortare_Topologica();
    fout.close();
    return 0;
}