Pagini recente » Cod sursa (job #1936076) | Cod sursa (job #100045) | Cod sursa (job #947232) | Cod sursa (job #1100768) | Cod sursa (job #2354329)
// sortare_topologica.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
//#include "pch.h"
#include <iostream>
#include <fstream>
#include <vector>
#include <list>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
int viz[50000],n,m;
list<int> G[50000];
list<int> l;
void adancime(int k)
{
viz[k] = 1;
for (list<int>::iterator i = G[k].begin(); i != G[k].end(); i++)
{
if (!viz[*i])
adancime(*i);
}
l.push_front(k);
}
void sort_topologica()
{
for (int i = 1; i <= n; i++)
if (!viz[i])
adancime(i);
}
int main()
{
vector<int> v;
fin >> n >> m;
list<int>::iterator k;
int i, j;
while (fin >> i >> j)
{
G[i].push_front(j);
}
sort_topologica();
for (k = l.begin(); k != l.end(); k++)
fout << *k<<" ";
}