Codeforces Global Round 10
F
Omkar and Landslide
Codeforces
2400
原题
← EG →
翻译中…

Omkar is standing at the foot of Celeste mountain. The summit is $n$ meters away from him, and he can see all of the mountains up to the summit, so for all $1 \leq j \leq n$ he knows that the height of the mountain at the point $j$ meters away from himself is $h_j$ meters. It turns out that for all $j$ satisfying $1 \leq j \leq n - 1$, $h_j \lt h_{j + 1}$ (meaning that heights are strictly increasing).

翻译中…

Suddenly, a landslide occurs! While the landslide is occurring, the following occurs: every minute, if $h_j + 2 \leq h_{j + 1}$, then one square meter of dirt will slide from position $j + 1$ to position $j$, so that $h_{j + 1}$ is decreased by $1$ and $h_j$ is increased by $1$. These changes occur simultaneously, so for example, if $h_j + 2 \leq h_{j + 1}$ and $h_{j + 1} + 2 \leq h_{j + 2}$ for some $j$, then $h_j$ will be increased by $1$, $h_{j + 2}$ will be decreased by $1$, and $h_{j + 1}$ will be both increased and decreased by $1$, meaning that in effect $h_{j + 1}$ is unchanged during that minute.

翻译中…

The landslide ends when there is no $j$ such that $h_j + 2 \leq h_{j + 1}$. Help Omkar figure out what the values of $h_1, \dots, h_n$ will be after the landslide ends. It can be proven that under the given constraints, the landslide will always end in finitely many minutes.

翻译中…

Note that because of the large amount of input, it is recommended that your code uses fast IO.

翻译中…

Input

翻译中…

The first line contains a single integer $n$ ($1 \leq n \leq 10^6$).

翻译中…

The second line contains $n$ integers $h_1, h_2, \dots, h_n$ satisfying $0 \leq h_1 \lt h_2 \lt \dots \lt h_n \leq 10^{12}$ — the heights.

翻译中…

Output

翻译中…

Output $n$ integers, where the $j$-th integer is the value of $h_j$ after the landslide has stopped.

翻译中…

Note

翻译中…

Initially, the mountain has heights $2, 6, 7, 8$.

翻译中…

In the first minute, we have $2 + 2 \leq 6$, so $2$ increases to $3$ and $6$ decreases to $5$, leaving $3, 5, 7, 8$.

翻译中…

In the second minute, we have $3 + 2 \leq 5$ and $5 + 2 \leq 7$, so $3$ increases to $4$, $5$ is unchanged, and $7$ decreases to $6$, leaving $4, 5, 6, 8$.

翻译中…

In the third minute, we have $6 + 2 \leq 8$, so $6$ increases to $7$ and $8$ decreases to $7$, leaving $4, 5, 7, 7$.

翻译中…

In the fourth minute, we have $5 + 2 \leq 7$, so $5$ increases to $6$ and $7$ decreases to $6$, leaving $4, 6, 6, 7$.

翻译中…

In the fifth minute, we have $4 + 2 \leq 6$, so $4$ increases to $5$ and $6$ decreases to $5$, leaving $5, 5, 6, 7$.

翻译中…

In the sixth minute, nothing else can change so the landslide stops and our answer is $5, 5, 6, 7$.

翻译中…

样例

Input #1
4
2 6 7 8
Output #1
5 5 6 7
InputCopy OutputCopy
题目信息
题号
1392F
时间限制
2 s
内存限制
256 MB
标签
二分
构造
数据结构
贪心
数学

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。