#106. 士兵
士兵
题目描述
有 名士兵参加了一场激烈的战斗。每个士兵身边有两个 伙伴,第 号士兵的 左侧伙伴 编号为 , 右侧伙伴 的编号为 。 号士兵没有 左侧伙伴, 号士兵没有 右侧伙伴。
在战斗过程中,陆续牺牲了 名士兵。一旦一名士兵牺牲了,存活的士兵就会相互接近,形成新的 伙伴 关系。给定士兵们牺牲的顺序及编号,请你输出当每个士兵牺牲时,新构成 伙伴 关系的两个士兵的编号。
输入格式
第一行:两个正整数表示 和 。 第二行到第 行:在第 行,有一个正整数 ,表示第 个牺牲的士兵编号。
输出格式
共 行:每行两个整数,第 行表示当 牺牲时,左右 伙伴 的编号,如果某侧没有 伙伴,输出一个 *
。
样例
5 3
3
2
1
2 4
1 4
* 4
数据范围
- 对于 的测试数据满足:。
- 对于 的测试数据满足:。
- 对于 的测试数据满足:。
- 本题数据范围很大,请尽量优化代码的时间消耗。
- 在这题中,尽量不要使用
endl
进行换行,否则可能会导致你的代码TLE
。