Placeholder

#2688

중위 순회 (OBILAZAK) 1초 32MB

문제

아래 그림과 같이 높이가 K인 완전이진 트리가 있다.

이중 오른쪽 트리를 각 레벨마다 왼쪽 노드에서부터 오른쪽 노드까지 차례대로 읽으면 3 / 6, 2 / 1, 4, 5, 7이 된다. 한편, 이 트리를 중위 순회하면 1, 6, 4, 3, 5, 2, 7이 된다.


트리를 중위 순회한 결과가 주어질 때, 이 트리를 각 레벨마다 왼쪽 노드에서부터 오른쪽 노드까지 차례대로 읽는 프로그램을 작성하여라.



입력

첫 번째 줄에는 트리의 높이 K (1≤K≤10)가 주어진다.

두 번째 줄에는 2k-1개의 수가 주어지는데, 트리를 중위 순회한 결과값이 공백을 사이에 두고 주어진다.



출력

각 줄에 각 레벨의 노드들을 왼쪽에서 오른쪽까지 읽은 결과를 공백을 사이에 두고 출력한다.



예제1

입력
2

2 1 3
출력
1

2 3

예제2

입력
3

1 6 4 3 5 2 7
출력
3

6 2
1 4 5 7

출처

COCI 2013/2014 - Contest 5


역링크 공식 문제집만

로그인해야 코드를 작성할 수 있어요.
중위 순회 (OBILAZAK) - JUNGOL