import sys sys.setrecursionlimit(10**6) input = sys.stdin.readline N = int(input()) inOrder = list(map(int, input().split())) # left - root - right postOrder = list(map(int, input().split())) # left - right - root preOrder = [] # root - left - right inOrderIdx = [0] * (N+1) for i in range(N) : inOrderIdx[inOrder[i]] = i def find(L_in, R_in, L_post, R_post) : if L_in > R_in or L_post > R_post : return root = postOrder[R_post] root_idx = inOrderIdx[root] left_length = root_idx - L_in preOrder.append(root) find(L_in, L_in + left_length - 1, L_post, L_post + left_length - 1) find(root_idx + 1, R_in, L_post + left_length, R_post - 1) find(0, N-1, 0, N-1) print(*preOrder)