#702. 清仓

清仓

题目描述

某宝的在线商店目前有 NN 件商品,第 ii 件商品剩余库存为 AiA_i 单位。

按顺序处理接下来的 QQ 个订单。第 ii 个订单如下:

购买区间 [li,ri][l_i, r_i] 内每种商品 kik_i 单位。若某商品库存少于 kik_i 单位,则购买其所有剩余库存。请报告该订单中被购买的商品总数(即购买的单位总数)。

注意:对于 i<Qi<Q,第 ii 个订单购买后库存减少,随后再处理第 i+1i+1 个订单。

输入格式

输入共 Q+3Q+3 行,每一行的格式如下:

  • 11 行:一个整数 NN,表示商品数量。
  • 22 行:NN 个整数,分别是 A1,A2,,ANA_1,A_2,\dots,A_N(以空格分隔)。
  • 33 行:一个整数 QQ,表示订单数。
  • 44 行 到 第 Q+3Q+3 行:每一行对应一个订单,第 ii 行为第 ii 个订单的参数 li ri kil_i\ r_i\ k_i,均为整数,用空格分隔。

输出格式

输出 QQ 行。第 ii 行输出第 ii 个订单中被购买的商品总数。

样例输入

6
2 6 4 5 7 5
5
1 6 1
3 5 4
4 4 1
2 5 1
1 6 100

样例输出

6
11
0
2
10

说明

样例解释

初始时各商品库存为(按商品编号):[2,6,4,5,7,5][2,6,4,5,7,5]

  • 11 个订单:l1=1,r1=6,k1=1l_1=1,r_1=6,k_1=1。每种商品购买 11,共购 66 单位。库存变为 [1,5,3,4,6,4][1,5,3,4,6,4]
  • 22 个订单:l2=3,r2=5,k2=4l_2=3,r_2=5,k_2=4。在区间 [3,5][3,5],商品剩余分别为 3,4,63,4,6,购买量为 3,4,43,4,4;合计 1111 单位。库存变为 [1,5,0,0,2,4][1,5,0,0,2,4]
  • 33 个订单:l3=4,r3=4,k3=1l_3=4,r_3=4,k_3=1。第 44 件商品库存为 00,购买 00,合计 00。库存不变。
  • 44 个订单:l4=2,r4=5,k4=1l_4=2,r_4=5,k_4=1。在区间购买量为 0,1,0,0,1,00,1,0,0,1,0(只列出区间及影响),合计 22。库存变为 [1,4,0,0,1,4][1,4,0,0,1,4]
  • 55 个订单:l5=1,r5=6,k5=100l_5=1,r_5=6,k_5=100。每种商品购买其所有剩余库存,合计 1010。库存变为全 00

数据范围

  • 所有输入值均为整数。
  • 1N3×1051\le N\le 3\times 10^5
  • 1Ai10151\le A_i\le 10^{15}
  • 1Q3×1051\le Q\le 3\times 10^5
  • 1liriN1\le l_i\le r_i\le N
  • 1ki1091\le k_i\le 10^9