Cod sursa(job #1849387)

Utilizator sotoc1999Sotoc George sotoc1999 Data 17 ianuarie 2017 14:29:41
Problema Sortare topologica Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
int n,m,x,y;
struct nod{
    int vecin;
    struct nod *urm;
}*l[50003],*actual;
bool viz[50003];
void df(int k)
{
    struct nod *actual;
    g<<k<<" ";
    viz[k]=true;
    actual=l[k];
    while(actual!=NULL)
    {
        if(viz[actual->vecin]==false)
        {
            df(actual->vecin);
        }
        actual=actual->urm;
    }
}
int main()
{
    f>>n>>m;
    int i;
    for(i=1;i<=m;i++)
    {
        f>>x>>y;
        actual=new nod;
        actual->vecin=y;
        actual->urm=l[x];
        l[x]=actual;
    }
    for(i=1;i<=n;i++)
    {
        if(viz[i]==0)
            df(i);
    }
    return 0;
}