Vous recevez une séquence $A_1, A_2, \ldots, A_N$ de longueur $N$. Écrivez un programme pour traiter les requêtes suivantes :
1 L R X: Pour tout $L \le i \le R$, définir $A_i = \min(A_i, X)$.2 L R: Afficher $\max(A_L, A_{L+1}, \ldots, A_R)$.3 L R: Afficher $A_L + A_{L+1} + \ldots + A_R$.
Entrée
La première ligne contient la longueur $N$ de la séquence. ($1 \le N \le 1{,}000{,}000$)
La deuxième ligne contient $A_1, A_2, \ldots, A_N$. ($0 \le A_i < 2^{31}$)
La troisième ligne contient le nombre $M$ de requêtes. ($1 \le M \le 1{,}000{,}000$)
Les $M$ lignes suivantes contiennent chacune une requête. ($1 \le L \le R \le N$, $0 \le X < 2^{31}$) Les requêtes de type 2 et de type 3 apparaissent au moins une fois.
Sortie
Pour chaque requête de type 2 et de type 3, affichez le résultat, chacun sur une ligne séparée.
Exemples
Entrée 1
5 1 2 3 4 5 5 2 1 5 3 1 5 1 3 5 3 2 1 5 3 1 5
Sortie 1
5 15 3 12