#4403. 倒水

倒水

题目描述:

在桌子上摆放了 $n$ 个杯子,每个杯子中有一定量的水。小 A 同学负责向杯子中倒水,他总共倒了 $k$ 次。每次操作会向从第 $L$ 个杯子到第 $R$ 个杯子中添加 $P$ 毫升水(注意:水只可能增加,不可能减少)。

请你计算小 A 同学倒了 $k$ 次水之后,每个杯子中最终有多少毫升水。


输入格式:

第一行包含两个整数 $n$ 和 $k$,表示杯子的数量和倒水次数。

第二行包含 $n$ 个整数,第 $i$ 个整数表示第 $i$ 个杯子初始的水量(单位:毫升)。

接下来 $k$ 行,每行包含三个整数 $L, R, P$,表示一次操作向从第 $L$ 个杯子到第 $R$ 个杯子中加入 $P$ 毫升水。


输出格式:

输出一行 $n$ 个整数,第 $i$ 个整数表示第 $i$ 个杯子最终的水量。


数据范围:

  • $1 \le n, k \le 100000$
  • $1 \le L \le R \le n$
  • $0 \le P \le 1000$
  • 杯子初始水量在 $[0,1000]$ 范围内
  • 本题保证所有操作完成后,水量仍在 int 类型范围内

样例输入:

8 3
1 2 10 8 1 5 1 1
7 8 12
1 8 4
2 3 12

样例输出:

5 18 26 12 5 9 17 17