#MC1010. 城墙耐久计算

城墙耐久计算

题目描述

在《我的世界》中,你正在建造一个很长的城墙。城墙由一系列方块组成,每个方块有不同的耐久度。你得到了一个长度为 nn 的数组 durabilities,其中 durabilities[i] 表示第 ii 个方块的耐久度。

现在有 mm 次攻击,每次攻击会对城墙的一段连续区间 [l,r][l, r] 内的方块造成伤害。每次攻击的伤害值为 dd

你需要计算经过所有攻击后,城墙每个方块剩余的耐久度。

输入格式

  • 第一行包含两个整数 nnmm,分别表示城墙的长度和攻击的次数。
  • 第二行包含 nn 个整数,durabilities[0], durabilities[1], ..., durabilities[n - 1],表示每个方块的初始耐久度。
  • 接下来 mm 行,每行包含三个整数 ll, rr, dd,表示一次攻击的区间 [l,r][l, r] 和伤害值 dd

输出格式

输出一行,包含 nn 个整数,表示经过所有攻击后每个方块剩余的耐久度。

样例输入

5 2
10 20 30 40 50
1 3 5
2 4 10

样例输出

5 5 15 30 50