Problem6745--伙伴

6745: 伙伴

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

有 $n$ 名士兵参加了一场激烈的战斗。
每个士兵身边有两个伙伴,第 $i$ 号士兵的左侧伙伴编号为 $i-1$,右侧伙伴的编号为和 $i+1$。$1$ 号士兵没有左侧伙伴,$n$ 号士兵没有右侧伙伴。
在战斗过程中,陆续牺牲了 $m$ 名士兵。一旦一名士兵牺牲了,存活的士兵就会相互接近,形成新的伙伴关系。
给定士兵们牺牲的顺序及编号,请你输出当每个士兵牺牲时,新构成伙伴关系的两个士兵的编号。

Input

第一行:两个正整数表示 $n$ 和 $m$。
第二行到第 $m+1$ 行:在第 $i+1$ 行,有一个正整数 $s_i$,表示第 $i$ 个牺牲的士兵编号。

Output

共 $m$ 行:每行两个整数,第 $i$ 行表示当 $s_i$ 牺牲时,左右伙伴的编号,如果某侧没有伙伴,输出一个 *。

Constraints

对于 $30\%$ 的数据,$1\leq n\leq 10,000$;
对于 $60\%$ 的数据,$1\leq n\leq 100,000$;
对于 $100\%$ 的数据,$1\leq n\leq 1,000,000,\ 1\leq m<n$

Sample 1 Input

5 3
3
2
1

Sample 1 Output

2 4
1 4
* 4

Source/Category