Bạn được cho một dãy $A_1, A_2, \ldots, A_N$ độ dài $N$. Hãy viết chương trình xử lý các truy vấn sau:
1 L R X: Với mọi $L \le i \le R$, gán $A_i = \min(A_i, X)$.2 L R: In ra $\max(A_L, A_{L+1}, \ldots, A_R)$.3 L R: In ra $A_L + A_{L+1} + \ldots + A_R$.
Dữ liệu vào
Dòng đầu tiên chứa độ dài $N$ của dãy. ($1 \le N \le 1{,}000{,}000$)
Dòng thứ hai chứa $A_1, A_2, \ldots, A_N$. ($0 \le A_i < 2^{31}$)
Dòng thứ ba chứa số lượng truy vấn $M$. ($1 \le M \le 1{,}000{,}000$)
$M$ dòng tiếp theo, mỗi dòng chứa một truy vấn. ($1 \le L \le R \le N$, $0 \le X < 2^{31}$) Các truy vấn loại 2 và loại 3 xuất hiện ít nhất một lần.
Dữ liệu ra
Với mỗi truy vấn loại 2 và loại 3, in ra kết quả, mỗi kết quả trên một dòng riêng biệt.
Ví dụ
Dữ liệu vào 1
5 1 2 3 4 5 5 2 1 5 3 1 5 1 3 5 3 2 1 5 3 1 5
Dữ liệu ra 1
5 15 3 12