A7634. [ABC133D] Rain Flows into Dams
编程题
普及/提高-
知识点
题目描述
有 $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$ 个水坝,分别编号为第 $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\ \ldots\ A_N$
> $N$
> $A_1\ A_2\ \ldots\ A_N$
输出格式
请按顺序输出第 $1$ 座山、第 $2$ 座山,……,第 $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$
- 输入所描述的情况,保证每座山降雨量为非负偶数时有解。
## 样例解释 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$ 升水。
- 所有输入均为整数。
- $3 \leq N \leq 10^5-1$
- $N$ 是奇数。
- $0 \leq A_i \leq 10^9$
- 输入所描述的情况,保证每座山降雨量为非负偶数时有解。
## 样例解释 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$ 升水。