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ą postorder spełnia następujące warunki:
- dla każdego poddrzewa, wszystkie wierzchołki potomne tego poddrzewa zapisane są przed wierzchołkiem tego poddrzewa,
- dla każdego poddrzewa wszystkie wierzchołki jego lewego poddrzewa zapisane są przed wierzchołkami jego prawego 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ą postorder.
Elementy obu drzew są liczbami całkowitymi z zakresu 10..99.
W pierwszym wierszu należy zapisać pierwsze w drzew metodą postorder, 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:
3 23 86 49 97 47 11 45 89 12 50 84 40 59 31
Poprawną odpowiedzią jest wyjście:
97 47 86 11 45 49 23 31 50 59 89 12 84 40
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 : 32 MB Słowa niedozwolone :