長さ の配列 が与えられます。
また、 個のクエリが与えられるので、順番に処理してください。
クエリは次の 種類のいずれかです。
1 l r v
: に を加算する。2 k
: の値を出力する。入力は以下の形式で標準入力から与えられる。
N Q A1 A2 ... AN query1 query2 ... queryQ
番目の query では、まずクエリの種類 のいずれか が与えられ、 のときは追加で 、 のときは追加で が与えられる。
すなわち、各クエリは以下に示す つの形式のいずれかが与えられる。
1 l r v
2 k
を満たすクエリの個数を として、 行出力せよ。
行目では 番目のそのようなクエリに対する答えを出力せよ。
5 4 1 2 3 4 5 1 1 4 3 2 1 1 2 5 10 2 3
4 16
最初のクエリについて、 に が加算されるため、配列の状態は となります。
番目のクエリについては、 の値である を出力します。
番目のクエリについては、 に が加算されるため、配列の状態は となります。
番目のクエリについては、 の値である を出力します。
8 10 321058955 375783138 635607560 71852896 108254942 605658038 79928128 104692941 1 1 7 866702240 1 5 7 645425643 2 3 2 2 1 1 8 639545895 2 3 1 1 3 729844449 1 6 7 357725289 2 6 2 3
1502309800 1242485378 2141855695 3115057105 2871700144
答えが32bit整数型に収まらない可能性があることに注意してください。