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ą inorder spełnia następujące warunki:
- dla każdego poddrzewa, wszystkie wierzchołki jego lewego poddrzewa zapisane są przed wierzchołkiem tego poddrzewa,
- wszystkie wierzchołki jego prawego poddrzewa zapisane są po wierzchołku tego 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ą inorder.
Elementy obu drzew są liczbami całkowitymi z zakresu 10..99.
W pierwszym wierszu należy zapisać pierwsze w drzew metodą inorder, 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 78 27 87 95 98 37
Poprawną odpowiedzią jest wyjście:
27 78 87 98 95 37
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 :