atcoder#ARC080C. [ARC080E] Young Maids

[ARC080E] Young Maids

Score : 800800 points

Problem Statement

Let NN be a positive even number.

We have a permutation of (1,2,...,N)(1, 2, ..., N), p=(p1,p2,...,pN)p = (p_1, p_2, ..., p_N). Snuke is constructing another permutation of (1,2,...,N)(1, 2, ..., N), qq, following the procedure below.

First, let qq be an empty sequence. Then, perform the following operation until pp becomes empty:

  • Select two adjacent elements in pp, and call them xx and yy in order. Remove xx and yy from pp (reducing the length of pp by 22), and insert xx and yy, preserving the original order, at the beginning of qq.

When pp becomes empty, qq will be a permutation of (1,2,...,N)(1, 2, ..., N).

Find the lexicographically smallest permutation that can be obtained as qq.

Constraints

  • NN is an even number.
  • 2N2×1052 \leq N \leq 2 \times 10^5
  • pp is a permutation of (1,2,...,N)(1, 2, ..., N).

Input

Input is given from Standard Input in the following format:

NN

p1p_1 p2p_2 ...... pNp_N

Output

Print the lexicographically smallest permutation, with spaces in between.

4
3 2 4 1
3 1 2 4

The solution above is obtained as follows:

pp qq
(3,2,4,1)(3, 2, 4, 1) ()()
(3,1)(3, 1) (2,4)(2, 4)
()() (3,1,2,4)(3, 1, 2, 4)
2
1 2
1 2
8
4 6 3 2 8 5 7 1
3 1 2 7 4 6 8 5

The solution above is obtained as follows:

pp qq
(4,6,3,2,8,5,7,1)(4, 6, 3, 2, 8, 5, 7, 1) ()()
(4,6,3,2,7,1)(4, 6, 3, 2, 7, 1) (8,5)(8, 5)
(3,2,7,1)(3, 2, 7, 1) (4,6,8,5)(4, 6, 8, 5)
(3,1)(3, 1) (2,7,4,6,8,5)(2, 7, 4, 6, 8, 5)
()() (3,1,2,7,4,6,8,5)(3, 1, 2, 7, 4, 6, 8, 5)