Pagini recente » Cod sursa (job #1736158) | Cod sursa (job #493008) | Cod sursa (job #1775249) | Cod sursa (job #1382989) | Cod sursa (job #574259)
Cod sursa(job #574259)
#include <stdio.h>
#include <malloc.h>
typedef struct nod nod;
struct nod
{
int x;
nod *nx;
};
void rsd(int i,nod **v,FILE *g)
{
nod *x;
fprintf(g,"%d ",i+1);
x=v[i];
while(x!=NULL)
{
rsd(x->x,v,g);
x=x->nx;
}
}
int main()
{
FILE *f,*g;
int i,n,m,a,b;
int *ok;
nod **v;
nod *x;
f=fopen("sortaret.in", "r");
g=fopen("sortaret.out", "w");
fscanf(f,"%d%d",&n,&m);
v=(nod **)malloc(n*sizeof(nod *));
ok=(int *)malloc(n*sizeof(int));
for(i=0;i<n;i++)
{
v[i]=NULL;
ok[i]=0;
}
for(i=0;i<m;i++)
{
x=(nod *)malloc(sizeof (nod));
fscanf(f,"%d%d",&a,&b);
a--;
b--;
x->x=b;
x->nx=v[a];
v[a]=x;
ok[b]=1;
}
for(i=0;i<n;i++)
if(ok[i]==0)
{
rsd(i,v,g);
fclose(g);
return(0);
}
return 0;
}