Cod sursa(job #2424516)

Utilizator luizaelenaaaAchim Luiza luizaelenaaa Data 23 mai 2019 10:07:05
Problema Sortare topologica Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
vector< vector < int > >graf;
vector < int > viz;
int n,m;
void DFS(int nod)
{
    viz[nod]=1;
    int lim = graf[nod].size();
    for(int i=0; i<lim; i++)
    {
        int vecin = graf[nod][i];
        if(viz[vecin] == 0)DFS(vecin);
    }
    g<<nod<<" ";
}
int main()
{

    f>>n>>m;
    graf.resize(n+1);
    viz.resize(n+1,0);
    int i;
    for(i=1; i<=m; i++)
    {
        int x,y;
        f>>x>>y;
        graf[y].push_back(x);
    }
    for(i=1;i<=n;i++)
    {
        if(viz[i]==0)
        {
            DFS(i);
        }
    }
    return 0;
}