[Buổi 22][Cây đoạn cơ bản (Segment Tree)][WS] Bài 1: Giám sát mức tối thiểu động


LÀM BÀI

Points: 100
Time limit: 2.0s
Memory limit: 256M

Author:
Problem types

Giám sát mức tối thiểu động

Bối cảnh và bài toán

Một hệ thống giám sát lưu n chỉ số theo thời gian. Một chỉ số có thể được hiệu chỉnh tại một vị trí, và người vận hành cần biết giá trị nhỏ nhất trên một đoạn bất kỳ sau các cập nhật.

Yêu cầu

Xử lý cập nhật điểm và truy vấn giá trị nhỏ nhất trên đoạn.

Input

  • Dòng 1 chứa n q.
  • Dòng 2 chứa mảng ban đầu.
  • 1 k u: gán vị trí k bằng u.
  • 2 a b: hỏi giá trị nhỏ nhất trên [a,b].

Output

In kết quả cho mỗi truy vấn loại 2.

Ràng buộc

  • 1 <= n, q <= 2 * 10^5
  • 1 <= a[i], u <= 10^9
  • 1 <= k <= n
  • 1 <= a <= b <= n

Chấm điểm

Subtask Điểm Điều kiện Official tests
S1 20% n, q <= 30 01–04
S2 30% n, q <= 5000 05–10
S3 50% Không có ràng buộc bổ sung 11–20

Ví dụ 1

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. Sau cập nhật, min trên đoạn 1..4 tăng từ 2 lên 3.

Ví dụ 2

Input

4 4
9 7 8 6
2 1 4
1 4 10
2 2 4
2 4 4

Output

6
7
10

Giải thích. Truy vấn một phần tử cũng là một đoạn hợp lệ.

Thông tin bài tập

Thuộc tính Giá trị
Mã bài DSA-M07-B22-WS01
Buổi B22
Loại bài WORKSHOP
Mức độ khó Trung bình (Medium)
Thời gian làm bài khuyến nghị 40 phút
Time limit 2 giây
Memory limit 256 MB
Tổng điểm 100
Chuẩn ngôn ngữ tham chiếu C++11 trở lên

Nguồn: Phỏng theo CSES – Dynamic Range Minimum Queries.


Comments

There are no comments at the moment.

Zalo