CF218A Mountain Scenery

题目描述

小 Bolek 找到了一幅画着 $n$ 座山峰的图片。画中的 $n$ 座山峰由一条非封闭的折线表示,这条折线由 $2n$ 条线段组成。这些线段依次经过 $2n+1$ 个点,其坐标分别为 $(1, y_1)$,$(2, y_2)$,$\dots$,$(2n+1, y_{2n+1})$,第 $i$ 条线段连接点 $(i, y_i)$ 和 $(i+1, y_{i+1})$。对于任何偶数 $i$($2 \leq i \leq 2n$),都有 $y_{i-1} < y_i$ 且 $y_i > y_{i+1}$。 我们称 $x$ 坐标为偶数的顶点为山峰。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF218A/96f9e39adc23f097d41530b53dba00529f48c7bd.png) 左图是初始图片,右图是 Bolek 操作后的图片,被影响的山峰用红色标记,$k=2$。Bolek 想做点小恶作剧。他挑选了恰好 $k$ 个山峰,将经过这些峰顶的线段抹去,并将每个被选山峰的高度增加 $1$(即对应点的 $y$ 坐标加 $1$)。然后,他重新绘制缺失的线段,得到新的山峰画。我们记操作后经过的新折线所经过的点为 $(1, r_1)$、$(2, r_2)$、$\dots$、$(2n+1, r_{2n+1})$。 现在给出 Bolek 操作后的图片,请还原初始的那一幅。

输入格式

第一行包含两个用空格分隔的整数 $n$ 和 $k$($1 \leq k \leq n \leq 100$)。 第二行包含 $2n+1$ 个用空格分隔的整数 $r_1, r_2, \dots, r_{2n+1}$($0 \leq r_i \leq 100$),表示 Bolek 操作后折线各个顶点的 $y$ 坐标。 保证存在至少一种初始山峰图片进行如上操作后能得到给定图片。

输出格式

输出 $2n+1$ 个整数 $y_1, y_2, \dots, y_{2n+1}$,表示初始图片中折线的各顶点的 $y$ 坐标。若有多解,输出其中任意一组。

说明/提示

由 ChatGPT 5 翻译