Pagini recente » Cod sursa (job #2887281) | Cod sursa (job #1084990) | Cod sursa (job #2374858) | Cod sursa (job #2452825) | Cod sursa (job #1120418)
#include<fstream>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
struct nod
{
int inf;
nod* leg;
};
typedef nod* PNod;
PNod L[50001];
int q[50001],viz[50001],nr,n,m;
void df(int i)
{
viz[i]=1;
for(PNod p=L[i];p;p=p->leg)
if(!viz[p->inf])
df(p->inf);
q[++nr]=i;
}
void add(int x,int y)
{
PNod p=new nod;
p->inf=y;
p->leg=L[x];
L[x]=p;
}
int main()
{
int a,b,i,j;
f>>n>>m;
for(i=1;i<=m;i++)
{ f>>a>>b;
add(a,b);
}
for(i=1;i<=n;i++)
if(viz[i]==0)
df(i);
for(j=nr;j>=1;j--)
g<<q[j]<<" ";
return 0;
}