Cod sursa(job #1376298)

Utilizator Nitu.Catalin1998Ioan Florin Catalin Nitu Nitu.Catalin1998 Data 5 martie 2015 16:58:35
Problema Sortare topologica Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <fstream>
#include <vector>
#include <deque>

using namespace std;

vector<deque<int> > L(100 + 1, std::deque<int> (1));
bool viz[101];
int n, m, i, j, x, y;

ofstream fout("sortaret.out");

void travad(int i)
{
    fout << i;
    viz[i] = 1;
    int j = 1;
    while(L[i].size() != 1)
    {
        fout << ' ';
        if(viz[L[i][j]] == 0)
            travad(L[i][j]);
        L[i].pop_front();
    }
}

int main()
{
    ifstream fin("sortaret.in");
    fin >> n >> m;
    for(i = 1; i <= m; i++)
    {
        fin >> x >> y;
        L[x].push_back(y);
    }
    for(i = 1; i <= n; i++)
    {
        if(viz[i] == 0)
        {
            travad(i);
        }
    }
}