Mảng cộng dồn động

Xem PDF

Điểm: 100 (p) Thời gian: 0.25s Bộ nhớ: 100M Input: bàn phím Output: màn hình

Cho một mảng A gồm n phần tử số nguyên. Bạn cần xử lý q truy vấn thuộc một trong ba loại:

  • 1 x: Thêm giá trị x vào cuối của mảng A.
  • 2: Xóa giá trị cuối cùng của mảng A.
  • 3 l r: Tính tổng phần tử từ chỉ số l đến r, chỉ số của mảng bắt đầu từ 1.

Input

  • Dòng đầu tiên gồm hai số nguyên n, q.
  • Dòng thứ hai gồm n số nguyên A_i.
  • q dòng tiếp theo, mỗi dòng mô tả một truy vấn theo định dạng đã nêu ở trên.

Output

  • In ra một số nguyên cho mỗi truy vấn loại 3.

Giới hạn

  • \(1 \le n, q \le 10^5\)
  • \(1 \le x \le 10^9\)
  • \(1 \le l \le r \le |A|\), với \(|A|\) là độ dài của mảng A tại thời điểm truy vấn này xuất hiện.

Ví dụ

Test 1

Input
5 4
1 2 3 4 5
3 1 5
1 6
2
3 2 3
Output
15
5
Giải thích
  • Ban đầu A = [1, 2, 3, 4, 5].
  • Truy vấn 3 1 5 → tổng là 15.
  • Truy vấn 1 6 → thêm 6, A = [1, 2, 3, 4, 5, 6].
  • Truy vấn 2 → xóa phần tử cuối, A = [1, 2, 3, 4, 5].
  • Truy vấn 3 2 3 → tổng là 2 + 3 = 5.


Bình luận

Không có bình luận nào.