Module: ルート分解


Problem

5 /6


セグメント上の乗算

Theory Click to read/hide

セグメントに対して一括操作を実行し、インデックスによって要素を認識する必要があるタスクが与えられています。
一括操作はセグメントの合計計算として実行されます。
ブロックごとに、変更をそのブロックに保存し、そのブロックから要素をリクエストするときにその情報を考慮します。

Problem

長さ n の配列 a を指定します (\(1 <= n <= 2 \ cdot 10^6\)\(1 <= a_i <= 10^9\))。また、* のような m (\(1 <= m <= 500\)) クエリを指定すると、 lrk (\(1 <= l <= r <; = n\)\(0 <= k <10\))、および ?i (\(1 <= i <= n\))。

最初のケースでは、l から r までのセグメント内の数値に k を掛ける必要があります。 .

2 番目のケースでは、i の位置に数値を出力します。

要素には、1 から n までの番号が付けられます。

 

<頭> <本体>
# 入力 出力
1
5
1 1 1 1 1
3
? 3
* 2 3 9
? 3
1
9号