Problem description


Kolejność
(kolejnosc)
Limit pamięci: 256 MB
Limit czasu: 1.50 s

Jasio bardzo lubi ładne drzewa binarne, a ostatnio poznał również co to kolejność pre-order, post-order oraz in-order. Umie już wyznaczyć kolejność pre-order oraz post-order, ale niestety kolejność in-order nadal sprawia mu trudność, podobnie jak rysowanie drzewa. Poprosił Cię zatem o pomoc. Jasio dostarczy kolejność pre-order oraz post-order jego drzewa, na podstawie tego chciałby otrzymać kolejność inorder.

Jasio uznaje drzewo binarne za pełne, jeśli każdy z jego wierzchołków ma zero lub dwóch synów. Poniższe drzewo jest pełne:

Kolejność pre-order odwiedzania wierzchołków to: najpierw węzeł, potem lewe poddrzewo, a na końcu prawe poddrzewo. Kolejność post-order odwiedzania wierzchołków to: najpierw lewe poddrzewo, potem prawe poddrzewo, a na końcu węzeł. Kolejność in-order odwiedzania wierzchołków to: najpierw lewe poddrzewo, potem węzeł, a na końcu prawe poddrzewo.

Napisz program, który wczyta kolejność pre-order, następnie post-order wymyślonego przez Jasia pełnego drzewa binarnego, obliczy kolejność in-order i wypisze ją na standardowe wyjście.

Wejście

W pierwszym wierszu standardowego wejścia znajduje się jedna nieparzysta liczba naturalna N oznaczająca liczbę wierchołków w drzewie Jasia. W drugim i w trzecim wierszu podanych jest po N liczb naturalnych poodzielanych pojedynczymi odstępami oznaczających odpowiednio kolejność preorder oraz postorder wyznaczone przez Jasia.

Wierzchołki w drzewie Jasia etykietowane są parami różnymi liczbami naturalnymi nie przekraczającymi 109.

Wyjście

Na standardowe wyjście należy wypisać N liczb naturalnych – kolejność in-order drzewa wymyślonego przez Jasia.

Ograniczenia

1 ≤ N < 300 000.

Przykład

Wejście Wyjście Wyjaśnienie
9
4 1 5 8 7 6 3 9 10
5 8 1 3 9 6 10 7 4
5 1 8 4 3 6 9 7 10 

Drzewo, które sobie Jasio wyobraził wygląda tak jak w przykładzie narysowanym powyżej.