- Time limit: 1.00 s
- Memory limit: 512 MB
You are given an input list that consists of numbers. Each integer between and appears exactly once in the list.
Your task is to create a sorted output list using two stacks. On each move you can do one of the following:
- Move the first number from the input list to a stack
- Move a number from a stack to the end of the output list
Input
The first input line has an integer .
The second line has integers: the contents of the input list.
Output
Print integers: for each number the stack where it is moved ( or ).
You can print any valid solution. If there are no solutions, print IMPOSSIBLE
.
Constraints
Example
Input:
5 2 3 1 5 4
Output:
1 2 1 1 2