#HX1258E. 差分、二维前缀和练习题三:焚風现象

提交0 通过0
通过率0%
时间限制1000ms
内存限制128MiB
    ID: 10109 传统题 1000ms 128MiB 尝试: 0 已通过: 0 难度: 普及+/提高- 上传者: 标签>编程题C++CSPCSP复赛CSP复赛专项练习暑假CSP复赛集训暑假集训1258-T3部分分强化

题目描述

题目描述

IOI 国的风一直从海上向陆地方向吹。沿风向依次有 0,1,2,,n0,1,2,\ldots,nn+1n+1 个地点,其中地点 00 的海拔高度为 a0=0a_0=0,地点 ii 的海拔高度为 aia_i

风沿地表吹过时,温度会随高度变化。地点 00 的风温为 00 度。对于所有 ii0i<n0\le i\lt n),风从地点 ii 到达地点 i+1i+1 时:

  • ai<ai+1a_i\lt a_{i+1},风温下降 (ai+1ai)×S(a_{i+1}-a_i)\times S 度;
  • aiai+1a_i\ge a_{i+1},风温上升 (aiai+1)×T(a_i-a_{i+1})\times T 度。

IOI 国的地壳运动十分剧烈。你已知接下来 QQ 天的地壳变动信息:第 jj 天,区间 [Lj,Rj][L_j,R_j] 内所有地点的海拔高度都增加 xjx_j。当 xj<0x_j\lt 0 时,表示这些地点的海拔高度下降 xj|x_j|

请在每天的地壳变动结束后,输出地点 nn 的风温。

输入格式

第一行包含四个整数 n,Q,S,Tn,Q,S,T

接下来 n+1n+1 行,第 i+1i+1 行包含一个整数 aia_i,表示地点 ii 的海拔高度。

接下来 QQ 行,第 jj 行包含三个整数 Lj,Rj,xjL_j,R_j,x_j,表示第 jj 天的地壳变动。

输出格式

输出 QQ 行,每行一个整数。第 jj 行表示第 jj 天地壳变动结束后地点 nn 的风温。

样例输入

3 5 1 2
0
4
1
8
1 2 2
1 1 -2
2 3 5
1 2 -1
1 3 5

样例输出

-5
-7
-13
-13
-18

数据范围

  • 对于 30%30\% 的数据,n,Q2000n,Q\le 2000
  • 另有 10%10\% 的数据,S=TS=T
  • 对于 100%100\% 的数据:
    • 1n,Q2×1051\le n,Q\le 2\times 10^5
    • 1S,T1061\le S,T\le 10^6a0=0- a_0=0106ai106-10^6\le a_i\le 10^61in1\le i\le n);
    • 1LjRjn1\le L_j\le R_j\le n106xj106-10^6\le x_j\le 10^61jQ1\le j\le Q)。
3 5 1 2
0
4
1
8
1 2 2
1 1 -2
2 3 5
1 2 -1
1 3 5
-5
-7
-13
-13
-18
3 5 1 2 
0 
4 
1 
8 
1 2 2 
1 1 -2 
2 3 5 
1 2 -1 
1 3 5
-5
-7
-13
-13
-18
3 5 1 2  
0  
4  
1  
8  
1 2 2  
1 1 -2  
2 3 5  
1 2 -1  
1 3 5
-5
-7
-13
-13
-18