Pagini recente » Cod sursa (job #1060470) | Cod sursa (job #2843423) | Cod sursa (job #1869003) | Cod sursa (job #734200) | Cod sursa (job #3145183)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
vector<vector<int>> grph = vector<vector<int>>(100001);
vector<bool> viz = vector<bool>(100001,false);
vector<int> ord;
void dfs(int x){
viz[x] = true;
for (const auto &item: grph[x]) {
if(viz[item] == false){
dfs(item);
}
}
ord.push_back(x);
}
int main(){
int n,m;
fin>>n>>m;
for(int i=0;i<m;i++){
int x,y;
fin>>x>>y;
grph[x].push_back(y);
}
for (int i=1;i<=n;i++) {
if(viz[i] == 0)
dfs(i);
}
for(auto i = ord.rbegin(); i!=ord.rend();i++){
cout<<*i<<" ";
}
}