Module: Décomposition des racines


Problem

5 /6


Multiplication sur un segment

Theory Click to read/hide

Une tâche est donnée dans laquelle il faut effectuer des opérations en masse sur un segment et reconnaître un élément par index.
Les opérations de masse sont effectuées sous la forme d'un calcul de somme sur un segment.
Pour chaque bloc, nous stockons la modification dans ce bloc, et lors de la demande d'un élément de ce bloc, nous prenons cette information en compte.

Problem

Étant donné un tableau a de longueur n (\(1 <= n <= 2 \ cdot 10^6\), \(1 <= a_i <= 10^9\)). Donne également des requêtes m (\(1 <= m <= 500\)) comme *, l, r, k (\(1 <= l <= r < = n\), \(0 <= k <10\)) et des requêtes comme ?, je (\(1 <= je <= n\)).

Dans le premier cas, vous devez multiplier les nombres du segment de l à r inclus par k .

Dans le second cas, imprimez le numéro à la position i.

Les éléments sont numérotés de 1 à n.

 

Exemples
5
1 1 1 1 1
3
 ? 3
* 2 3 9
 ? 3
# Entrée Sortie
1 1
9