Tổng các đoạn [a,b]
Xem dạng PDFMô 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:
- Cập nhật giá trị tại vị trí ~ k ~ thành ~ u ~.
- Tính tổng các giá trị trong đoạn ~[a, b]~.
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"
(Cập nhật giá trị tại vị trí ~ k ~ thành ~ u ~). - Truy vấn loại 2:
"2 a b"
(Tính tổng các giá trị trong đoạn ~[a, b]~).
- Truy vấn loại 1:
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 3 1
2 1 4
Output:
14
2
11
Giải thích:
- Truy vấn 1 (
2 1 4
): Tổng các phần tử trong đoạn ~[1, 4]~ là ~ 3 + 2 + 4 + 5 = 14 ~. - Truy vấn 2 (
2 5 6
): Tổng các phần tử trong đoạn ~[5, 6]~ là ~ 1 + 1 = 2 ~. - Truy vấn 3 (
1 3 1
): Cập nhật giá trị tại vị trí 3 thành 1, mảng trở thành[3, 2, 1, 5, 1, 1, 5, 3]
. - Truy vấn 4 (
2 1 4
): Tổng các phần tử trong đoạn ~[1, 4]~ là ~ 3 + 2 + 1 + 5 = 11 ~.
Bình luận
Gửi bài giải
Kotlin
PyPy
Đ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
Pascal
Python
Scratch