Module: Decomposição de raiz


Problem

5 /6


Multiplicação em um segmento

Theory Click to read/hide

É dada uma tarefa na qual é necessário realizar operações em massa em um segmento e reconhecer um elemento por índice.
As operações em massa são realizadas como um cálculo de soma em um segmento.
Para cada bloco, armazenamos a alteração nesse bloco e, ao solicitar um elemento desse bloco, levamos essa informação em consideração.

Problem

Dado um array a de comprimento n (\(1 <= n <= 2 \ cdot 10^6\), \(1 <= a_i <= 10^9\)). Também fornece m (\(1 <= m <= 500\)) consultas como *, l, r, k (\(1 <= l <= r < = n\), \(0 <= k <10\)) e consultas como ?, i (\(1 <= i <= n\)).

No primeiro caso, você precisa multiplicar os números no segmento de l a r inclusive por k .

No segundo caso, imprima o número na posição i.

Os elementos são numerados de 1 a n.

 

Exemplos
# Entrada Saída
1
5
1 1 1 1 1
3
? 3
* 2 3 9
? 3
1
9