IOI 国では海から陸に向かって常に風が吹いている.風は地点 0 から地点 1,地点 2,ldots という経路を通りながら地点 N まで吹く.地点 N には JOI 君の家が建てられている.地点 0 の標高は A0=0 であり,地点 i (1leqqileqqN) の標高は Ai である.
風は地表面に沿って吹き,高度の変化に応じて風の温度が変化する.海に接している地点 0 での風の温度は 0 度であり,すべての i (0leqqileqqN−1) に対して,地点 i から地点 i+1 にかけての風の温度の変化はその時点における Ai と Ai+1 にのみ依存しており,以下のようになっている.
- Ai<Ai+1 のとき,標高が 1 上がるごとに風の温度は S 度下がる.
- AigeqqAi+1 のとき,標高が 1 下がるごとに風の温度は T 度上がる.
IOI 国の領土では地殻変動が盛んである.あなたは,Q 日間の地殻変動のデータを入手した.j 日目 (1leqqjleqqQ) には,LjleqqkleqqRj (1leqqLjleqqRjleqqN) を満たす地点の標高 Ak が Xj だけ変化する.Xj が非負のときは,標高が Xj だけ上がることを意味し,Xj が負のときは,標高が ∣Xj∣ だけ下がることを意味する.
あなたの仕事は,各地殻変動が起こった後の,JOI 君の家に吹く風の温度を求めることである.
課題
地殻変動が起きる前の標高と地殻変動の情報が与えられたとき,すべての整数 j (1leqqjleqqQ) に対し,j 日目の地殻変動が起こった後の JOI 君の家に吹く風の温度を求めるプログラムを作成せよ.
入力
標準入力から以下の入力を読み込め.
- 1 行目には, 4 個の整数 N,Q,S,T が空白を区切りとして書かれている.これらは,JOI 君の家が地点 N に建てられており,地殻変動の回数が Q であり,標高が 1 上がるごとに風の温度が S 度下がり,1 下がるごとに T 度上がることを表す.
- 続く N+1 行のうちの i 行目 (1leqqileqqN+1) には,地点 i+1 での地殻変動が起こる前の標高を表す整数 Ai−1 が書かれている.
- 続く Q 行のうちの j 行目 (1leqqjleqqQ) には,3 個の整数 Lj,Rj,Xj が空白を区切りとして書かれている.これらは,j 日目の地殻変動で地点 Lj から Rj までの標高が Xj だけ変化することを表す.
出力
出力は Q 行からなる.標準出力の j 行目 (1leqqjleqqQ) には,j 日目の地殻変動が起こった後の JOI 君の家に吹く風の温度を出力せよ.
制限
すべての入力データは以下の条件を満たす.
- 1leqqNleqq200,000.
- 1leqqQleqq200,000.
- 1leqqSleqq1,000,000.
- 1leqqTleqq1,000,000.
- A0=0.
- \-1,000,000leqqAileqq1,000,000 (1leqqileqqN).
- 1leqqLjleqqRjleqqN (1leqqjleqqQ).
- \-1,000,000leqqXjleqq1,000,000 (1leqqjleqqQ).
小課題
小課題 1 [30 点]
以下の条件を満たす.
- Nleqq2,000.
- Qleqq2,000.
小課題 2 [10 点]
小課題 3 [60 点]
入力例 1
3 5 1 2
0
4
1
8
1 2 2
1 1 -2
2 3 5
1 2 -1
1 3 5
出力例 1
-5
-7
-13
-13
-18
最初,地点 0,1,2,3 の標高はそれぞれ 0,4,1,8 である.1 日目の地殻変動の後,標高はそれぞれ 0,6,3,8となる.このとき,地点 0,1,2,3 での風の温度はそれぞれ 0,−6,0,−5 となる.
入力例 2
2 2 5 5
0
6
-1
1 1 4
1 2 8
出力例 2
5
-35
この入力例は,小課題 2 の条件を満たす.
入力例 3
7 8 8 13
0
4
-9
4
-2
3
10
-9
1 4 8
3 5 -2
3 3 9
1 7 4
3 5 -1
5 6 3
4 4 9
6 7 -10
出力例 3
277
277
322
290
290
290
290
370