Pełne, piętnastoelementowe drzewo binarne można w najprostszy sposób zapisać od góry do dołu i od lewej do prawej, jako piętnastoelementowy ciąg liczb. W ciągu tym liczby na pozycjach od czwartej do siódmej są wierzchołkami trzeciego poziomu drzewa, zaś liczby na pozycjach powyżej siódmej liśćmi tego drzewa.
Drzewo zapisane metodą preorder spełnia następujące warunki:
- dla każdego poddrzewa, wierzchołek tego poddrzewa zapisany został przed jakimkolwiek potomkiem tego poddrzewa,
- dla każdego poddrzewa, wszyscy lewi potomkowie wierzchołka tego poddrzewa zapisani zostali przez jakimkolwiek prawym potomkiem wierzchołka poddrzewa.
Napisz program, który przekształci jedna postać drzewa w drugą i odwrotnie.
Pierwszy wiersz wejścia zawiera liczbę całkowitą n, która jest ilością
poziomów pełnego drzewa binarnego z zakresu 1..5.
W wierszu drugim zapisano drzewo binarne o n poziomach metodą od
góry do dołu i od lewej do prawej.
Wiersz trzeci zawiera pełne drzewo binarne o n poziomach zapisane
metodą preorder.
Elementy obu drzew są liczbami całkowitymi z zakresu 10..99.
W pierwszym wierszu należy zapisać pierwsze w drzew metodą preorder, w kolejnych wierszach drugie z drzew metodą od góry do dołu od lewej do prawej, czyli kolejne poziomy drzewa.
Dla danych podanych na wejściu:
2 67 29 23 30 39 67
Poprawną odpowiedzią jest wyjście:
67 29 23 30 39 67
Jeśli chcesz zobaczyć inny przykład odśwież tę stronę klawiszem F5
Opcje zadania:
Biblioteki : iostream iomanip cmath Limit czasu : 0.1 s Limit pamięci : 16 MB Słowa niedozwolone :