问题 B: Tree Construction

内存限制:256 MB 时间限制:2 S
题面:传统 评测方式:文本比较 上传者:
提交:1 通过:1

题目描述

在编程课上,Vasya被分配了一道难题。然而,他不知道如何编码,也无法在互联网上找到解决方案,所以他请你帮忙。
您将得到一个由n个不同整数组成的序列a,用于构造二叉搜索树。以下是对构造过程的正式描述:
    1. 第一个元素a1成为树的根。
    2. 元素  a2,a3,...,an ,, ,一个接一个地添加。要添加元素ai,需要从根开始遍历树,并使用以下规则:
        如果ai大于当前节点中的值,则其右子节点将成为当前节点。否则,当前节点的左子节点将成为新的当前节点。

        如果在某个时候没有所需的子节点,则创建新节点,并为其分配值ai,使其成为当前节点的相应子节点。

题目也可以理解为:给定一个有 N 个数 组成的序列,在此基础上构建一棵二叉排序树,求每个节点(根节点除外)的父节点的编号是多少。


输入格式

输入的第一行包含一个整数n(2≤n≤100000)-序列a的长度。
第二行包含n个不同的整数ai(1≤ai≤109)-序列a本身。

输出格式

输出n-1个整数。对于所有i>1的情况,输出每个节点(根节点除外)的父节点的编号是多少



Output n-1 integers. For all i>1 print the value written in the node that is the parent of the node with value ai in it.
Examples
Input
3
1 2 3
Output
1 2
Input
5
4 2 3 1 6
Output
4 2 2 4
第一个例子:




第二个例子:


输入样例 复制

3
1 2 3

输出样例 复制

1 2