Pagini recente » Cod sursa (job #386455) | Cod sursa (job #1119623) | Cod sursa (job #2774595) | Cod sursa (job #6010) | Cod sursa (job #3198925)
#include <bits/stdc++.h>
#define DIM 50001
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
int n, m, a, b;
bool parcurs[DIM];
int i;
vector <int> G[DIM];
stack <int> st;
void dfs(int nod){
parcurs[nod]=1;
for(int i=0; i<G[nod].size(); i++){
int fiu=G[nod][i];
if(!parcurs[fiu])
dfs(fiu);
}
st.push(nod);
}
int main(){
fin>>n>>m;
for(i=1; i<=m; i++){
fin>>a>>b;
G[a].push_back(b);
}
for(i=1; i<=n; i++){
if(!parcurs[i]){
dfs(i);
}
}
while(!st.empty()){
fout<<st.top()<<" ";
st.pop();
}
}