P11286 [COTS 2017] 盗道 Krimošten
题目背景
译自 [Izborne Pripreme 2017 (Croatian IOI/CEOI Team Selection)](https://hsin.hr/pripreme2017/) D1T2。$\texttt{4s,0.5G}$。
库纳(Kuna)是克罗地亚的货币单位。
题目描述
海岸线上有一排房子,从西到东标号 $1\sim n$。第 $i$ 座房子内有 $a_i$ 库纳。
有 $m$ 个窃贼要行窃。第 $i$ 个窃贼初始囊中有 $c_i$ 库纳,他将依次对编号为 $l_i,l_i+1,\cdots, r_i$ 的房子行窃。
盗亦有道,窃贼们践行盗之道。当窃贼对编号为 $j$ 的房子行窃时,令他囊中有 $k$ 库纳:
- 若 $k\lt a_j$,则窃贼将 $1$ 库纳收入囊中,即 $k\gets k+1$;
- 若 $k=a_j$,无事发生;
- 若 $k\gt a_j$,则窃贼拿出 $1$ 库纳赠给房主,即 $k\gets k-1$。
对于每个窃贼,求出他最后囊中会有多少库纳。
需要注意的是,**每个窃贼的行窃是独立的,不互相影响**。换句话说,可以认为一个窃贼行窃结束后,(在下一个窃贼行窃前)房子会恢复到初始状态。
输入格式
第一行,两个正整数 $n,m$;
第二行,$n$ 个非负整数 $a_1,a_2,\cdots,a_n$;
接下来 $m$ 行,每行三个整数 $l_i,r_i,c_i$。
输出格式
对于每个询问,输出一行一个整数表示答案。
说明/提示
对于 $100\%$ 的数据,保证:
- $1\le n\le 5\times 10^5$;
- $0\le a_i,c_i\le 10^6$;
- $1\le l_i\le r_i\le n $。
| 子任务编号 | $n\le $ | $m\le $ |得分 |
| :--: | :--: | :--: | :--: |
| $ 1 $ | $ 10^3 $ | $10^3$ | $ 7 $ |
| $ 2 $ | $ 5\times 10^4 $ | $10^5$ | $ 48 $ |
| $ 3 $ | $ 5\times 10^5 $ | $5\times 10^5$ | $ 45 $ |
再次提醒,**每个窃贼的行窃是独立的,不互相影响**。