Giá trị lớn nhất

Xem dạng PDF

Gửi bài giải


Điểm: 0,08 (OI)
Giới hạn thời gian: 0.4s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Cho một dãy gồm ~n~ phần tử có giá trị ban đầu bằng ~0~.

Cho ~m~ phép biến đổi, mỗi phép có dạng (~u~, ~v~, ~k~): tăng mỗi phần tử từ vị trí ~u~ đến vị trí ~v~ lên ~k~ đơn vị.

Cho ~p~ câu hỏi, mỗi câu có dạng (~u~, ~v~): cho biết giá trị lớn nhất của các phần tử có vị trí nằm trong đoạn [~u~, ~v~]

Input

  • Dòng 1: ~n~, ~m~
  • ~m~ dòng tiếp theo, mỗi dòng chứa ~u~, ~v~, ~k~ cho biết một phép biến đổi
  • Dòng thứ ~m+2~: một số ~p~
  • ~p~ dòng tiếp theo, mỗi dòng chứa 2 số ~u~, ~v~ cho biết một câu hỏi

Output

  • Gồm ~p~ dòng chứa kết quả tương ứng cho từng câu hỏi.

Giới hạn

  • ~n~, ~m~, ~p~ ~\leq~ ~50000~
  • ~0 < k ~
  • Giá trị của một phần tử luôn không vượt quá ~2^{31} -1~

Sample Input

6 2
1 3 2
4 6 3
1
3 4

Sample Output

3

Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    vtiendat88  đã bình luận lúc 4, Tháng 1, 2025, 10:14

    0.4s python it qua a a


  • -1
    vtiendat88  đã bình luận lúc 4, Tháng 1, 2025, 10:14

    def giatrilonnhat(n , m , p): arr = [0] * n for i in m: for id in range(i[0] - 1 , i[1]): arr[id] += i[2] r = [] for j in p: r.append(max(arr[j[0] - 1:j[1]])) return r if name == 'main': n , o = map(int,input().split()) m = [] p = [] for _ in range(o): u = list(map(int,input().split())) m.append(u) k = int(input()) for _ in range(k): v = list(map(int,input().split())) p.append(v) r = giatrilonnhat(n , m , p) for i in r: print(i)

    code python thi 0.4s nganws qua admin a


  • -5
    ngthang2022  đã bình luận lúc 30, Tháng 8, 2023, 5:06

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.


  • 36
    leduykhongngu  đã bình luận lúc 23, Tháng 5, 2021, 11:53

    Đề bài đã được update và time limit đã được giới hạn về 0.4s. Mình đã chấm lại các bài nộp.