[ABC133D] Rain Flows into Dams
题意翻译
有 $ N $ 座山,按顺时针编号依次为 $ 1 $号山,$ 2 $ 号山,以此类推。保证 $ N $是奇数。在这些山脉之间,有 $ N $ 座大坝,称为 $ 1 $ 号大坝,$ 2 $ 号大坝,以此类推。
第 $ i $ 号大坝位于山脉 $ i $ 和 $ i+1 $ 之间,由于山脉是环形分布的,所以山脉,山脉 $ N $ 是山脉 $ 0 $,$ N+1 $ 是山脉 $ 1 $,
当山脉 $ i $ 接收 $ 2x $ 升雨水,大坝 $ i-1 $ 号大坝和 $ i $ 号大坝分别接到 $ x $升水即将它收集到的水均分给两边大坝。
每天,每座山都接收到偶数升且水量不为负数的雨水,累计 $ a[i] $ 升水。
现在给出 大坝数量 $ N $ 和 第 $ i $ 个大坝收集的水量 $ a[i] $ ,请你出计算每座山的降水量。
可以证明,答案是唯一的。
题目描述
[problemUrl]: https://atcoder.jp/contests/abc133/tasks/abc133_d
円形に $ N $ 個の山が連なっており、時計回りに山 $ 1 $, 山 $ 2 $, $ … $, 山 $ N $ と呼ばれます。$ N $ は**奇数**です。
これらの山の間に $ N $ 個のダムがあり、ダム $ 1 $, ダム $ 2 $, $ … $, ダム $ N $ と呼ばれます。ダム $ i $ ($ 1\ \leq\ i\ \leq\ N $) は山 $ i $ と山 $ i+1 $ の間にあります (山 $ N+1 $ は山 $ 1 $ のことを指します)。
山 $ i $ ($ 1\ \leq\ i\ \leq\ N $) に $ 2x $ リットルの雨が降ると、ダム $ i-1 $ とダム $ i $ にそれぞれ $ x $ リットルずつ水が溜まります (ダム $ 0 $ はダム $ N $ のことを指します)。
ある日、各山に非負の**偶数**リットルの雨が降りました。
その結果、ダム $ i $ ($ 1\ \leq\ i\ \leq\ N $) には合計で $ A_i $ リットルの水が溜まりました。
各山に降った雨の量を求めてください。この問題の制約下では解が一意に定まることが証明できます。
输入输出格式
输入格式
入力は以下の形式で標準入力から与えられる。
> $ N $ $ A_1 $ $ A_2 $ $ ... $ $ A_N $
输出格式
山 $ 1 $, 山 $ 2 $, $ … $, 山 $ N $ に降った雨の量を表す $ N $ 個の整数をこの順に出力せよ。
输入输出样例
输入样例 #1
3
2 2 4
输出样例 #1
4 0 4
输入样例 #2
5
3 8 7 5 5
输出样例 #2
2 4 12 2 8
输入样例 #3
3
1000000000 1000000000 0
输出样例 #3
0 2000000000 0
说明
### 制約
- 入力は全て整数である。
- $ 3\ \leq\ N\ \leq\ 10^5-1 $
- $ N $ は奇数である。
- $ 0\ \leq\ A_i\ \leq\ 10^9 $
- 入力が表す状況は、各山に非負の偶数リットルの雨が降った際に発生しうる。
### Sample Explanation 1
山 $ 1,\ 2,\ 3 $ に降った雨の量をそれぞれ $ 4 $ リットル, $ 0 $ リットル, $ 4 $ リットルとすると以下のように辻褄が合います。 - ダム $ 1 $ には $ \frac{4}{2}\ +\ \frac{0}{2}\ =\ 2 $ リットルの水が溜まります。 - ダム $ 2 $ には $ \frac{0}{2}\ +\ \frac{4}{2}\ =\ 2 $ リットルの水が溜まります。 - ダム $ 3 $ には $ \frac{4}{2}\ +\ \frac{4}{2}\ =\ 4 $ リットルの水が溜まります。