#AT1382. D - Rain Flows into Dams

D - Rain Flows into Dams

D - 水流入水坝

得分 : 400400

问题描述

NN座山组成一个环,依次称为山11、山22、...、山NN,顺时针编号。 NN 是一个奇数

在这些山之间,有 NN 座水坝,分别称为水坝11、水坝22、...、水坝NN。 第 ii 座水坝(1iN1 \leq i \leq N)位于山 iii+1i+1 之间(山 N+1N+1 是山 11)。

当第 ii 座山山头接收到 2x2x 升的雨水时,第 i1i-1 座水坝和第 ii 座水坝都各自蓄积 xx 升的水(水坝 00 是水坝 NN)。

有一天,每座山山头都接收到了一个非负偶数升雨水。

结果是,第 ii 座水坝(1iN1 \leq i \leq N)积累了总共 AiA_i 升的水。

请找出每座山山头接收到的雨水量。 在本问题的限制条件下,我们可以证明解是唯一的。

限制条件

  • 输入中的所有值都是整数。
  • 3N105 ⁣ ⁣13 \leq N \leq 10^5\!-\!1
  • NN是奇数。
  • 0Ai1090 \leq A_i \leq 10^9
  • 在每座山头接收到一个非负偶数升雨水的情况下,输入所表示的情况是可以发生的。

输入

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

NN

A1A_1 A2A_2 ... ANA_N

输出

按顺序输出 NN 个整数,表示每座山山头接收到的雨水量。

样例输入1

3
2 2 4

样例输出1

4 0 4

如果我们假设山11、山22和山33分别接收到 440044 升的雨水,与输入一致,情况如下:

  • 水坝11 应该累积了 42+02=2\frac{4}{2} + \frac{0}{2} = 2 升的水。
  • 水坝22 应该累积了 02+42=2\frac{0}{2} + \frac{4}{2} = 2 升的水。
  • 水坝33 应该累积了 42+42=4\frac{4}{2} + \frac{4}{2} = 4 升的水。

样例输入2

5
3 8 7 5 5

样例输出2

2 4 12 2 8

样例输入3

3
1000000000 1000000000 0

样例输出3

0 2000000000 0