Pagini recente » Cod sursa (job #1518752) | Cod sursa (job #800683) | Cod sursa (job #2649962) | Cod sursa (job #1389773) | Cod sursa (job #3145163)
#include<fstream>
#include<stack>
#include<vector>
using namespace std;
ifstream cin("sortaret.in");
ofstream cout("sortaret.out");
int n,m;
vector <int> v[50001];
stack <int> ord;
int ok[50001];
void dfs(int nod){
ok[nod]=1;
for(unsigned int i=0;i<v[nod].size();i++)
if(ok[v[nod][i]]==0)
dfs(v[nod][i]);
ord.push(nod);
}
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++){
int ii,jj;
cin>>ii>>jj;
v[ii].push_back(jj);
}
for(int i=1;i<=n;i++)
if(ok[i]==0)
dfs(i);
while(!ord.empty()){
cout<<ord.top()<<" ";
ord.pop();
}
return 0;
}