Giá trị nhỏ nhất trong đoạn [a,b]

Xem dạng PDF

Mô tả bài toán:

Cho một mảng gồm ~ n ~ số nguyên, nhiệm vụ của bạn là xử lý ~ q ~ truy vấn với hai loại sau:

  1. Cập nhật giá trị tại vị trí ~ k ~ thành ~ u ~.
  2. Giá trị nhỏ nhất trong đoạn ~[a, b]~ là bao nhiêu?

Input:

  • Dòng đầu tiên chứa hai số nguyên ~ n ~ và ~ q ~: số lượng phần tử và số lượng truy vấn.
  • Dòng thứ hai chứa ~ n ~ số nguyên ~ x_1, x_2, \ldots, x_n ~: các giá trị trong mảng.
  • Tiếp theo có ~ q ~ dòng, mỗi dòng mô tả một truy vấn với ba số nguyên:
    • Truy vấn loại 1: "1 k u".
    • Truy vấn loại 2: "2 a b".

Output:

  • In ra kết quả của mỗi truy vấn loại 2.

Ràng buộc:

  • ~ 1 \leq n, q \leq 2 \cdot 10^5 ~
  • ~ 1 \leq x_i, u \leq 10^9 ~
  • ~ 1 \leq k \leq n ~
  • ~ 1 \leq a \leq b \leq n ~

Ví dụ:

Input:
8 4
3 2 4 5 1 1 5 3
2 1 4
2 5 6
1 2 3
2 1 4
Output:
2
1
3

Giải thích:

  • Truy vấn 1 (2 1 4): Giá trị nhỏ nhất trong đoạn ~[1, 4]~ là ~ \min(3, 2, 4, 5) = 2 ~.
  • Truy vấn 2 (2 5 6): Giá trị nhỏ nhất trong đoạn ~[5, 6]~ là ~ \min(1, 1) = 1 ~.
  • Truy vấn 3 (1 2 3): Cập nhật giá trị tại vị trí 2 thành 3, mảng trở thành [3, 3, 4, 5, 1, 1, 5, 3].
  • Truy vấn 4 (2 1 4): Giá trị nhỏ nhất trong đoạn ~[1, 4]~ là ~ \min(3, 3, 4, 5) = 3 ~.


Bình luận

Hãy đọc nội quy trước khi bình luận.

Không có bình luận tại thời điểm này.

Gửi bài giải
Điểm: 10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout
Nguồn bài: CSES
Dạng bài
CSES
Ngôn ngữ cho phép
C
C++
Java
Kotlin
Pascal
PyPy
Python
Scratch