#abc301b. [abc301_b] Fill the Gaps

[abc301_b] Fill the Gaps

题目描述

我们有一组长度为 NN 的正整数序列:A=(A1,ldots,AN)A=(A_1,\\ldots,A_N)。任意两个相邻的项的值都不同。

按照以下步骤向这个序列中插入一些数字。

  1. 如果 AA 中每一对相邻的项的绝对差都是 11,则终止该过程。
  2. 找到 AA 中离序列起始位置最近的绝对差不为 11 的相邻项对 Ai,Ai+1A_i, A_{i+1}
    • 如果 Ai<Ai+1A_i < A_{i+1},在 AiA_iAi+1A_{i+1} 之间插入 Ai+1,Ai+2,ldots,Ai+11A_i+1,A_i+2,\\ldots,A_{i+1}-1
    • 如果 Ai>Ai+1A_i > A_{i+1},在 AiA_iAi+1A_{i+1} 之间插入 Ai1,Ai2,ldots,Ai+1+1A_i-1,A_i-2,\\ldots,A_{i+1}+1
  3. 回到步骤 1。

打印出过程结束时的序列。

约束条件

  • 2N1002 \leq N \leq 100
  • 1Ai1001 \leq A_i \leq 100
  • AiAi+1A_i \neq A_{i+1}
  • 输入中的所有值都是整数。

输入

输入以以下格式从标准输入给出:

NN A1A_1 A2A_2 ldots\\ldots ANA_N

输出

打印出过程结束时的序列,使用空格分隔。

示例输入 1

4
2 5 1 2

示例输出 1

2 3 4 5 4 3 2 1 2

初始序列为 (2,5,1,2)(2,5,1,2)。过程如下:

  • 在第一项 22 和第二项 55 之间插入 3,43,4,得到序列 (2,3,4,5,1,2)(2,3,4,5,1,2)
  • 在第四项 55 和第五项 11 之间插入 4,3,24,3,2,得到序列 (2,3,4,5,4,3,2,1,2)(2,3,4,5,4,3,2,1,2)

示例输入 2

6
3 4 5 6 5 4

示例输出 2

3 4 5 6 5 4

无需进行插入操作。