Pagini recente » Cod sursa (job #525541) | Cod sursa (job #1591399) | Cod sursa (job #127164) | Cod sursa (job #3215151) | Cod sursa (job #1500896)
#include <algorithm>
#include <vector>
#include <iostream>
#include <fstream>
#include <stdio.h>
#define MAX_N 50100
#define pb push_back
using namespace std;
vector <int> neighbours[MAX_N];
vector <int> sortedGraph;
bool visited[MAX_N];
void SortTop(int node) {
if (visited[node])
return;
visited[node] = true;
for (auto neighbour: neighbours[node])
SortTop(neighbour);
sortedGraph.pb(node);
}
int main() {
ifstream cin("sortaret.in");
freopen("sortaret.out", "w", stdout);
int n, m;
cin >> n >> m;
for (int i = 0; i < m; i++) {
int x, y;
cin >> x >> y;
neighbours[x].pb(y);
}
for (int i = 1; i <= n; i++)
SortTop(i);
for (int i = 0; i < sortedGraph.size(); i++)
printf("%d ", sortedGraph[i]);
return 0;
}