Pagini recente » Cod sursa (job #2124927) | Cod sursa (job #2235640) | Cod sursa (job #1680504) | Cod sursa (job #1235441) | Cod sursa (job #897263)
Cod sursa(job #897263)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
struct nod {
int inf;
nod*adr;}*p,*v[50001],*adresa;
int i,j,t[50001],n,m,x,y,sol[50001],nr;
void insert(int x)
{
p=new nod;
p->inf=x;
p->adr=adresa;
adresa=p;
}
void DF(int x)
{t[x]=1;
for (p=v[x];p;p=p->adr)
if(t[p->inf]==0)
DF(p->inf);
insert(x);
}
int main()
{f>>n>>m;
for(i=1;i<=m;i++)
{f>>x>>y;
p=new nod;
p->inf=x;
p->adr=v[y];
v[y]=p;
}
for(i=1;i<=n;i++)
if(t[i]==0)
DF(i);
for(p=adresa;p;p=p->adr)
{nr++;
sol[nr]=p->inf;
}
for(i=n;i>=1;i--)
cout<<sol[i]<<" ";
return 0;
}