Pagini recente »
Istoria paginii runda/2014-01-14-test-78/clasament
|
Istoria paginii utilizator/florinflorin
|
Statistici Scinteie Alexandra (ScinteieAlexandra)
|
Borderou de evaluare (job #156906)
|
Cod sursă (job #77647)
Cod sursă (job
#77647)
#include <stdio.h>
using namespace std;
#define M 200001
int st[M] ,dr[M];
int poz ,pr ,prec ,radacina;
void parcarb(int poz)
{
if (poz==-1) return ;
parcarb( st[poz] );
if(prec==-1) pr = poz;
else (dr[prec]=poz);
st[poz]=prec;
prec=poz;
parcarb( dr[poz] );//parcurg arborele recursiv
}
FILE *fin ,*fout;
int n;
int main(){
fin = fopen("pointeri.in" ,"r");
fout = fopen("pointeri.out" ,"w");
int i;
fscanf(fin ,"%d%d" , &n ,&radacina);
prec=-1;
for(i=0;i<n;i++)
{
fscanf(fin ,"%d" ,&st[i]);
}
for(i=0;i<n;i++)
{
fscanf(fin ,"%d" ,&dr[i]);
}
parcarb(radacina);
fprintf(fout ,"%d\n" ,pr);
for(i=0;i<n;i++)
{
fprintf(fout ,"%d " ,st[i]);
}
fprintf(fout ," ");
for(i=0;i<n;i++)
{
fprintf(fout ,"%d" ,dr[i]);
}
return 0;
}