#abc133d. [abc133_d]Rain Flows into Dams

[abc133_d]Rain Flows into Dams

题目描述

在一个环形轨道上有 NN 座山峰,按顺时针顺序称为 Mountain 11、Mountain 22......、Mountain NNNN 是一个 奇数

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

当第 ii 座山峰(1iN1 \leq i \leq N)接收到 2x2x 升雨水时,Dam i1i-1 和 Dam ii 分别积累了 xx 升水(Dam 00 是 Dam NN)。

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

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

找出每座山峰接收到的雨水量。我们可以证明在这个问题的约束条件下,解是唯一的。

约束条件

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

输入

从标准输入读入输入数据,数据格式如下:

NN A1A_1 A2A_2 ...... ANA_N

输出

按照顺序打印 NN 个整数,表示 Mountain 11、Mountain 22......、Mountain NN 接收到的雨水量。

示例输入 1

3
2 2 4

示例输出 1

4 0 4

如果我们假设 Mountain 112233 分别接收到了 440044 升雨水,那么根据这个输入,以下结果是一致的:

  • Dam 11 应该积累了 frac42+frac02=2\\frac{4}{2} + \\frac{0}{2} = 2 升水。
  • Dam 22 应该积累了 frac02+frac42=2\\frac{0}{2} + \\frac{4}{2} = 2 升水。
  • Dam 33 应该积累了 frac42+frac42=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