Pagini recente » Cod sursa (job #48778) | Cod sursa (job #696637) | Cod sursa (job #300867) | Cod sursa (job #1515187) | Cod sursa (job #2666429)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
vector<int> graph[50001];
int* visited= new int[50001];
stack<int> stck;
void topologicalSort(int vertex, int visited[], stack<int>& stck){
visited[vertex] = 1;
for(auto neigh:graph[vertex]){
if(!visited[neigh]){
topologicalSort(neigh, visited, stck);
}
}
stck.push(vertex);
}
int main()
{
int n,m,x,y,i;
fin>>n>>m;
for(i=0;i<m;i++){
fin>>x>>y;
graph[x].push_back(y);
}
for(i=1;i<=n;i++){
if(!visited[i]){
topologicalSort(i, visited, stck);
}
}
while(!stck.empty()){
fout<<stck.top()<<" ";
stck.pop();
}
return 0;
}