Pagini recente » Cod sursa (job #1337936) | Cod sursa (job #2133596) | Cod sursa (job #1918088) | Cod sursa (job #2282397) | Cod sursa (job #1850038)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
int i,n,m,v[100002],x,y,sol[100000],nr;
struct nod
{
int vecin;
struct nod *urm;
}*l[100002],*p,*q;
void df(int k)
{
struct nod *p;
v[k]=1;
p=l[k];
while(p!=NULL)
{
int j=p->vecin;
if(v[j]==0)
df(j);
p=p->urm;
}
nr++;
sol[nr]=k;
}
int main()
{
f>>n>>m;
for(i=1;i<=m;i++)
{
f>>x>>y;
p=new nod;
p->vecin=y;
p->urm=l[x];
l[x]=p;
}
for(i=1;i<=n;i++)
if(v[i]==0)
df(i);
for(i=nr;i>=1;i--)
g<<sol[i]<<" ";
return 0;
}