Pagini recente » Cod sursa (job #2898990) | Cod sursa (job #977679) | Cod sursa (job #2420249) | template/preoni-2006 | Cod sursa (job #1202421)
#include <fstream>
using namespace std;
ifstream cin("sortaret.in");
ofstream cout("sortaret.out");
typedef struct celula {
long nod;
celula* next;
}*lista ;
lista lda[50013],sol;
long t,i,m,a,b,suma;
long viz[50013],maxim,j,n;
void add(long nod,lista &p)
{
lista r= new celula;
r->nod=nod;
r->next=p;
p=r;
}
void dfs(long nod)
{
lista r=lda[nod];
while (r){
if (!viz[r->nod])dfs(r->nod);
viz[r->nod]=1;
r=r->next;
}
add(nod,sol);
}
int main()
{
cin>>n>>m;
while (m--){
cin>>a>>b;
add(b,lda[a]);
}
for (i=1;i<=n;++i)
if (!viz[i]){
dfs(i);
viz[i]=1;
}
while (sol){
cout<<sol->nod<<" ";
sol=sol->next;
}
return 0;
}