izo

La o lucrare de control la informatica, profesoara i-a pus pe elevi sa deseneze un arbore cu radacina cu maxim 200 de noduri si sa simuleze diversi algoritmi pe acesti arbori. Corectand lucrarile, profesoara a observat ca arborii desenati de 2 elevi seamana FOARTE mult (cu toate acestea, ei nu sunt neaparat identici). Profesoara este SIGURA ca elevii s-au "inspirat" unul de la celalalt, insa pentru a ii putea pedepsi, trebuie sa arate ca cei doi arbori difera numai prin modul de numerotare a nodurilor. Spre norocul profesoarei, ambii elevi au numerotat radacinile cu 1.

Date de intrare
Fisierul izo.in contine pe prima linie numarul N reprezentand numarul de noduri ale arborilor. Urmeaza descrierile arborilor celor 2 elevi. O descriere de arbore consta dintr-o secventa de N numere, numarul I reprezentand tatal nodului I. Se considera ca tatal radacinii este 0.

Date de iesire
Fisierul izo.out va contine o permutare a[1]..a[N] cu semnificatia ca nodul a[I] din cel de-al doilea arbore corespunde nodului I din primul arbore. A[1] va fi intotdeauna 1. Numerele vor fi scrise pe acelasi rand si vor fi separate prin spatii.

Restrictii
Daca exista mai multe moduri de renumerotare, profesoara se multumeste cu oricare.
Se garanteaza ca exista cel putin o solutie

Exemple

izo.in

izo.out

4
0 1 2 2
0 4 4 1

1 4 3 2

Timp maxim de executie/test: 0.1 secunde

Daniel Dumitran

Universitatea Politehnica Bucuresti

Contact:odumitran@go.ro