Pagini recente » Cod sursa (job #1255245) | Cod sursa (job #440871) | Cod sursa (job #2767625) | Cod sursa (job #1665888) | Cod sursa (job #2348825)
#include <fstream>
#include <vector>
#include <stack>
#define NMAX 50005
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
int n, m;
bool viz[NMAX];
vector<int> A[NMAX];
stack<int> Sort;
void citire()
{
fin >> n >> m;
for (; m; m--)
{
int x, y;
fin >> x >> y;
A[x].push_back(y);
}
}
void DFS(int sursa)
{
viz[sursa] = true;
for (size_t i = 0; i < A[sursa].size(); i++)
{
if (!viz[A[sursa][i]])
DFS(A[sursa][i]);
}
Sort.push(sursa);
}
int main()
{
citire();
for (int i = 1; i <= n; i++)
{
if (!viz[i])
DFS(i);
}
while (!Sort.empty())
{
fout << Sort.top() << ' ';
Sort.pop();
}
return 0;
}