“鬼脚图”(Ghost Leg)是一种表示置换的方法。
鬼脚图可以表示为一组垂直线,每条线对应被置换集合中的一个元素。水平线(类似于梯子的横档)连接相邻的垂直线,且没有任何两条横档共享同一个端点。右侧的插图展示了一个示例。
要确定任何元素在鬼脚图置换下的最终位置,请从该元素对应的垂直线顶部开始。沿着线向下追踪,直到遇到第一条接触该线的横档。沿着该横档移动到相邻的垂直线。横档是向左还是向右并不重要,只需跟随它即可。继续向下,跟随横档,直到到达底部。这就给出了该元素在置换下的最终位置。
在示例中,元素 2 在置换后排在第三位。路径用红色虚线标出。同样地,元素 1 最终排在第四位,元素 3 排在第一位,元素 4 排在第二位。
给定鬼脚图的描述,确定置换的结果。换句话说,应用指定的置换,并按置换后的顺序输出元素。
输入格式
输入的第一行包含两个正整数 $n$ ($1 \le n \le 100$) 和 $m$ ($0 \le m \le 1,000$),其中 $n$ 是被置换的元素数量,$m$ 是横档的数量。垂直线(元素)从左到右依次由整数 $1$ 到 $n$ 标识。
接下来的 $m$ 行,每行包含一个整数 $a$ ($1 \le a < n$),表示在垂直线 $a$ 和 $a + 1$ 之间有一条横档。横档按从鬼脚图顶部到底部的顺序排列。显然,没有两条横档处于同一高度。
输出格式
输出 $n$ 行,每行包含一个整数。这是最终的置换结果。第一行是置换后排在第一位的元素,第二行是排在第二位的元素,依此类推。
样例
样例输入 1
4 5 1 2 1 3 2
样例输出 1
3 4 2 1
样例输入 2
7 6 6 4 2 1 3 5
样例输出 2
3 1 5 2 7 4 6