Cho một dãy A gồm n phần tử a1, a2,..an và Q truy vấn, mỗi truy vấn là một trong 2 loại sau:
- Loại 1 có dạng 1 i v: đặt phần tử có chỉ số i thành v (1 ≤ i ≤ n, 0 ≤ v ≤ 109);
- Loại 2 có dạng 2 l r: tính giá trị nhỏ nhất trên đoạn [l, r] và số lượng phần tử bằng giá trị nhỏ nhất (1 ≤ l ≤ r ≤ n).
Yêu cầu: Hãy viết một cây phân đoạn để tính min 1 đoạn và số lượng chỉ số bằng min trong đoạn đó và cập nhật 1 điểm.
Dữ liệu vào: Có cấu trúc như sau:
- Dòng đầu tiên gồm 2 số nguyên n, Q (1 ≤ n, Q ≤ 105);
- Dòng thứ hai chứa n số nguyên a1, a2,..., an miêu tả giá trị ban đầu của dãy (1 ≤ ai ≤ 109);
- Q dòng tiếp theo, mỗi dòng chứa 3 số nguyên miêu tả một trong 2 truy vấn đã được đề cập ở trên.
Kết quả: Ứng với mỗi truy vấn loại 2, in ra hai số nguyên: giá trị nhỏ nhất trên đoạn [l, r] và số lượng phần tử bằng giá trị nhỏ nhất.
Input |
Output |
5 5 11 13 13 13 10 2 2 5 2 5 5 1 5 13 2 2 3 2 1 3 |
10 1 10 1 13 2 11 1
|