Pagini recente » Cod sursa (job #681160) | Cod sursa (job #2761304) | Cod sursa (job #3143532) | Cod sursa (job #613533) | Cod sursa (job #2762571)
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 5 * 1e4 + 65;
const int INF = 1e8;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
bool seen[MAXN];
vector <int> g[MAXN];
vector <int> ans;
void dfs(int node){
if(!seen[node]) seen[node] = 1;
else return;
for(auto x : g[node])
dfs(x);
ans.push_back(node);
}
int main(){
int n, m ; fin >> n >> m;
for(int i = 1; i <= m; ++i){
int x, y ; fin >> x >> y;
g[x].push_back(y);
}
for(int i = 1; i <= n; ++i) dfs(i);
int lungime = ans.size() - 1;
for(int i = lungime; i >= 0; --i)
fout << ans[i] << ' ';
return 0;
}