//数组模拟链表秒了
#include<bits/stdc++.h>
using namespace std;
int n,m;
struct soldier{
int index;
int pre;
int nxt;
};
int main(){
scanf("%d%d",&n,&m);
vector<soldier> s(n+10);
for(int i = 1; i <= n; i++){
s[i].index = i;
s[i].pre = i-1;
s[i].nxt = i+1;
}
int ind;
while(m--){
//不断维护每个死去士兵的左节点和右节点
scanf("%d",&ind);
int nx = s[ind].nxt;
int pr = s[ind].pre;
s[pr].nxt = s[ind].nxt;
s[nx].pre = s[ind].pre;
if(s[ind].nxt > n && s[ind].pre < 1) printf("* *\n");
else if(s[ind].nxt > n) printf("%d *\n",s[ind].pre);
else if(s[ind].pre < 1) printf("* %d\n",s[ind].nxt);
else printf("%d %d\n",s[ind].pre, s[ind].nxt);
}
}
0 回复
0 转发
0 喜欢
7 阅读



