trang chủ / đề bài / dhbb23_nbk_10_a

Tổng đoạn con

Đề bài

Mô tả

Cho dãy A gồm N số nguyên a1,a2,…,aN (|ai|≤109). Ban đầu dãy số bằng 0 (mọi ai=0), với q truy vấn loại 1 cần xây dựng lại dãy số như sau: trong đoạn từ l đến r tăng thêm giá trị là v (mỗi phần tử al,al+1,…,ar tăng thêm v). Với p truy vấn loại 2 tính tổng các giá trị trong đoạn [l,r], tức là al+al+1+…+ar.

Tất cả q truy vấn loại 1 được thực hiện trước, sau đó mới đến p truy vấn loại 2. Ràng buộc |ai|≤109 áp dụng cho mọi phần tử của dãy sau khi thực hiện xong mọi truy vấn loại 1.

Yêu cầu: Hãy viết chương trình tính tổng các giá trị trong đoạn [l,r] cho mỗi truy vấn loại 2.

Dữ liệu vào

  • Dòng đầu chứa 3 số nguyên dương N, q và p.
  • q dòng tiếp theo, mỗi dòng chứa một truy vấn loại 1 gồm 3 số nguyên l, r và v (1≤l≤r≤N và |v|≤109).
  • p dòng cuối, mỗi dòng chứa một truy vấn loại 2 gồm 2 số nguyên l và r (1≤l≤r≤N).

Các số trên cùng một dòng cách nhau một dấu cách.

Dữ liệu ra

Gồm p dòng, mỗi dòng là kết quả tính được trong đoạn [l,r] của truy vấn loại 2 tương ứng.

Ràng buộc

  • 1≤N,q,p≤106.
  • 1≤l≤r≤N, |v|≤109.
  • Sau khi thực hiện mọi truy vấn loại 1, |ai|≤109 với mọi i.

Subtasks

  • 60% số test: N,p,q≤103.
  • 25% số test: N,q≤104, p≤105.
  • 15% số test còn lại: N,p,q≤106.

Ví dụ

Input Output Giải thích
5 2 1
1 2 3
3 5 2
2 3
5 Sau hai truy vấn loại 1, dãy là 3,3,2,2,2. Tổng đoạn [2,3] là 3+2=5.
5 2 2
1 2 3
3 5 2
1 3
3 5
8
6
Cùng dãy 3,3,2,2,2: đoạn [1,3] có tổng 8, đoạn [3,5] có tổng 6.

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0