#AT2566. B - Fill the Gaps
B - Fill the Gaps
当前没有测试数据。
B - 填补间隙
得分: $200$ 分
问题描述
我们有一个长度为 $N$ 的正整数序列: $A=(A_1,\ldots,A_N)$。任意两个相邻的项的值均不相等。
现在按照以下步骤向这个序列中插入一些数字。
- 如果 $A$ 中的每一对相邻项的绝对差为 1,则终止。
- 设 $A_i, A_{i+1}$ 是 $A$ 中在开头最近的一对相邻项,其绝对差不为 1。
- 如果 $A_i < A_{i+1}$,在 $A_i$ 和 $A_{i+1}$ 之间插入 $A_i+1,A_i+2,\ldots,A_{i+1}-1$。
- 如果 $A_i > A_{i+1}$,在 $A_i$ 和 $A_{i+1}$ 之间插入 $A_i-1,A_i-2,\ldots,A_{i+1}+1$。
- 返回步骤 1。
输出在过程结束时的序列。
约束
- $2 \leq N \leq 100$
- $1 \leq A_i \leq 100$
- $A_i \neq A_{i+1}$
- 输入中的所有值都是整数。
输入
从标准输入中获得输入数据的格式如下:
输出
输出过程结束时的序列,用空格分隔。
4
2 5 1 2
2 3 4 5 4 3 2 1 2
初始序列为 $(2,5,1,2)$。过程如下。
- 在第一个项 $2$ 和第二个项 $5$ 之间插入 $3,4$,得到序列 $(2,3,4,5,1,2)$。
- 在第四个项 $5$ 和第五个项 $1$ 之间插入 $4,3,2$,得到序列 $(2,3,4,5,4,3,2,1,2)$。
6
3 4 5 6 5 4
3 4 5 6 5 4
没有进行插入操作。