#1999. [ABC250C] Adjacent Swaps

[ABC250C] Adjacent Swaps

题目描述

NN 个球左右排成一列。最开始,从左到右的第 i(1iN)i (1 \le i \le N) 个球写着整数 ii

你进行了 QQ 回的操作。第 i(1iQ)i (1 \le i \le Q) 次操作如下:

  • jjNN 个球中写着整数 xix_i 的球的位置
  • 如果 j=Nj = N,将其与第 j1j - 1 个球交换;否则,与第 j+1j + 1 个球交换

求操作后的球上分别写着的数字(从左到右输出)。

输入格式

第一行为 N,QN,Q

接下来 QQ 行输入每行输入一个数字 xix_i

输出格式

从左到右输出操作后的球上分别写着的数字.

5 5
1
2
3
4
5
1 2 3 5 4
7 7
7
7
7
7
7
7
7
1 2 3 4 5 7 6
10 6
1
5
2
9
6
6
1 2 3 4 5 7 6 8 10 9

样例1 解释

操作步骤如下

  • 将写有 11 的球与右边的下一个球交换。现在,这些球上从左到右依次写着整数 2,1,3,4,52,1,3,4,5
  • 将写有 22 的球与右边的下一个球交换。现在,这些球上从左到右写着整数 1,2,3,4,51,2,3,4,5
  • 将写有 33 的球与右边的下一个球交换。现在,这些球上从左到右写着整数 1,2,4,3,51,2,4,3,5
  • 将写有 44 的球与右边的下一个球交换。现在,这些球上从左到右写着整数 1,2,3,4,51,2,3,4,5
  • 将写有 55 的球与左边的下一个球交换,因为它是最右边的球。现在,这些球上从左到右写着整数 1,2,3,5,41,2,3,5,4

提示

  • 2  N  2 × 105 2\ \leq\ N\ \leq\ 2\ \times\ 10^5
  • 1  Q  2 × 105 1\ \leq\ Q\ \leq\ 2\ \times\ 10^5
  • 1  xi  N 1\ \leq\ x_i\ \leq\ N