rendered paste body#include <stdio.h>
#include "structs.h"
main()
{
FILE* in=fopen("in.txt","r");
FILE* out=fopen("out.txt","w");
int w,i,d,n;
char c;
fscanf(in,"%d",&w);
lista_wsk tab[w+1];
int nowy[w+1];
kolejka kol1;
kol1.head=NULL;
kol1.tail=NULL;
kolejka tmp;
for(i=1;i<=w;i++)
{
nowy[i]=0;
tab[i]=NULL;
}
i=1;
while(!feof(in))
{
fscanf(in,"%d",&d);
c=fgetc(in);
tab[i]=push_kon_l(d,tab[i]);
if(c==10)
{
i++;
n=0;
while(c==10)
{
c=fgetc(in);
n++;
}
i+=(n-1);
fseek(in,-1,1);
}
}
/*for(i=1;i<=w;i++)
{
while(tab[i])
{
fprintf(stdout,"%d ",top_pocz_l(tab[i]));
tab[i]=tab[i]->nst;
}
printf("\n");
} */
n=0;
i=1;
kol1=in_k(i,kol1);
nowy[i]=1;
fprintf(stdout,"%d ",i);
while((n<w-2))
{
while(tab[i])
{
if(!is_k(top_pocz_l(tab[i]),kol1))
{
fprintf(stdout,"%d ",top_pocz_l(tab[i]));
kol1=in_k(top_pocz_l(tab[i]),kol1);
nowy[top_pocz_l(tab[i])]=1;
}
tab[i]=pop_pocz_l(tab[i]);
}
n++;
i=pop_k(n,kol1);
}
for(i=1;i<=w;i++)
{
if(nowy[i]!=1)
{
fprintf(stdout,"\ngraf niespojny");
break;
}
if(i==w) fprintf(stdout,"\ngraf spojny");
}
getch();
fclose(out);
fclose(in);
}