Pagini recente » Cod sursa (job #913804) | Cod sursa (job #1292222) | Cod sursa (job #3205354) | Cod sursa (job #2348990) | Cod sursa (job #3198920)
#include <fstream>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
int n,m,viz[50001];
struct nod
{
int vf;
nod *urm;
}*v[50001],*adresa;
void ad(nod *&prim,int x)
{
nod *nou=new nod;
nou->vf=x;
nou->urm=prim;
prim=nou;
}
void citire()
{
fin>>n>>m;
for(int i=1;i<=m;++i)
{
int x,y;
fin>>x>>y;
ad(v[x],y);
}
}
void DFS(int x)
{
viz[x]=1;
for(nod *p=v[x];p;p=p->urm)
if(viz[p->vf]==0) DFS(p->vf);
ad(adresa,x);
}
void afis()
{
for(nod *p=adresa;p;p=p->urm) fout<<p->vf<<" ";
}
int main()
{
citire();
for(int i=1;i<=n;++i)
if(!viz[i]) DFS(i);
afis();
return 0;
}