Pagini recente » Cod sursa (job #2322971) | Cod sursa (job #2077908) | Cod sursa (job #872800) | Cod sursa (job #2064753) | Cod sursa (job #1754688)
#include<iostream>
#include<fstream>
#include<vector>
#include<stack>
#include<algorithm>
#define DX 50100
using namespace std;
fstream fin("sortaret.in",ios::in),fout("sortaret.out",ios::out);
int n,m,ap[DX];
vector<int> v[DX];
stack<int> st;
void citire();
void dfs(int nod);
int main()
{
citire();
for(int i=1;i<=n;i++) if(ap[i]==0) dfs(i);
while(st.empty()==0)
{
fout<<st.top()<<" ";
st.pop();
}
}
void dfs(int nod)
{
for(int i=0;i<v[nod].size();i++) if(ap[v[nod][i]]==0) dfs(v[nod][i]);
ap[nod]=1;
st.push(nod);
}
void citire()
{
int i,a,b;
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>a>>b;
v[a].push_back(b);
}
}