CNTMIN - CNTMIN
Dữ liệu vào: standard input
Dữ liệu ra: standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: adminchg

Cho một dãy A gồm n phần tử a1, a2,..anQ 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 rn).

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.

Ví dụ

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

 

 

 

Back to Top