[Buổi 21][Cây Fenwick (Binary Indexed Tree)][HW] Bài 2: Điều chỉnh đồng loạt theo khoảng
Điều chỉnh đồng loạt theo khoảng
Bối cảnh và bài toán
Một bảng định mức gồm n vị trí thường xuyên nhận các đợt hiệu chỉnh đồng loạt trên một đoạn liên tiếp. Sau các đợt cập nhật, hệ thống cần truy vấn nhanh giá trị hiện thời tại một vị trí cụ thể.
Yêu cầu
Hỗ trợ tăng toàn bộ phần tử trên đoạn và truy vấn một điểm.
Input
- Dòng 1 chứa
n q. - Dòng 2 chứa mảng ban đầu.
- Truy vấn loại
1 a b u: cộnguvào mọi vị trí trong[a,b]. - Truy vấn loại
2 k: in giá trị hiện tại tạik.
Output
In đáp án cho mỗi truy vấn loại 2.
Ràng buộc
1 <= n, q <= 2 * 10^51 <= a[i], u <= 10^91 <= a <= b <= n1 <= k <= 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 3
3 2 4 5 1 1 5 3
2 4
1 2 5 1
2 4
Output
5
6
Giải thích. Sau khi cộng 1 cho đoạn 2..5, vị trí 4 tăng từ 5 lên 6.
Ví dụ 2
Input
4 5
1 1 1 1
1 1 4 3
2 1
1 2 3 2
2 2
2 4
Output
4
6
4
Giải thích. Hai đợt cập nhật chồng lấn tại vị trí 2 và 3.
Thông tin bài tập
| Thuộc tính | Giá trị |
|---|---|
| Mã bài | DSA-M07-B21-HW02 |
| Buổi | B21 |
| Loại bài | HOMEWORK |
| 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 – Range Update Queries.
Comments