Pagini recente » Cod sursa (job #2472584) | Autentificare | Cod sursa (job #2891921) | Cod sursa (job #1147764) | Cod sursa (job #2969481)
#include<iostream>
#include<deque>
#include<algorithm>
#include<vector>
#include<fstream>
using namespace std;
ifstream in("sortaret.in");
ofstream out("sortaret.out");
const int mx = 50001;
int n,m;
vector<int> g[mx];
vector<int> result;
vector<bool> visited;
void read(){
in>>n>>m;
visited.resize(n+1,false);
int a,b;
for(int i=0;i<m;i++){
in>>a>>b;
g[b].push_back(a);
}
}
void dfs(int node){
visited[node] = true;
for(int k:g[node]){
if(!visited[k])
dfs(k);
}
result.push_back(node);
}
void solve(){
for(int i=1;i<=n;i++){
if(!visited[i])
dfs(i);
}
for(int k:result)
out<<k<<" ";
}
int main(){
read();
solve();
return 0;
}