Pagini recente » Cod sursa (job #309116) | Cod sursa (job #3232406) | Cod sursa (job #881527) | Cod sursa (job #3143632) | Cod sursa (job #545900)
Cod sursa(job #545900)
#include <cstdio>
#include <vector>
using namespace std;
int x,y,viz[50001],sol[50001],n,m;
vector <int> a[50001];
void df(int k);
int main(int k){
int i;
freopen("sortaret.in","r",stdin);
freopen("sortaret.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=1;i<=m;++i) scanf("%d%d",&x,&y),a[x].push_back(y);
for(i=1;i<=n;++i)
if (viz[i]==0)
df(i);
for(i=sol[0];i>=1;--i)
printf("%d ",sol[i]);
return 0;
}
void df(int k){
vector <int>::iterator i;
if (viz[k]) return;
viz[k]=1;
for(i=a[k].begin();i!=a[k].end();++i)
df(*i);
sol[++sol[0]]=k;
}