Đụn cát

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài

Gió mạnh trên sa mạc làm độ cao của một triền cát dài thay đổi liên tục. Triền cát được chia thành các khoảng liên tiếp và đánh số từ ~1~ đến ~10^9~. Ban đầu, mọi khoảng đều có độ cao ~0~.

Có ~n~ cơn gió mạnh. Cơn gió thứ ~i~ tác động lên các khoảng từ ~l_i~ đến ~r_i~ với cường độ giật ~x_i~ và làm thay đổi độ cao như sau:

  • khoảng ~l_i~ tăng thêm ~x_i~
  • khoảng ~l_i+1~ giảm đi ~x_i~
  • khoảng ~l_i+2~ tăng thêm ~x_i~
  • … cứ luân phiên ~+x_i, -x_i, +x_i, -x_i~ cho đến ~r_i~.

Sau tất cả các cơn gió, cần trả lời độ cao hiện tại tại ~m~ vị trí được hỏi.

Yêu cầu

Với ~n~ thao tác gió dạng trên và ~m~ truy vấn vị trí ~q_j~, hãy xác định độ cao cuối cùng tại mỗi ~q_j~.

Dữ liệu

  • Dòng đầu chứa ~2~ số nguyên ~n~ và ~m~ (~1 \le n, m \le 1000~).
  • Trong ~n~ dòng tiếp theo, dòng thứ ~i~ chứa ~3~ số nguyên ~l_i, r_i, x_i~ (~1 \le l_i \le r_i \le 10^9~, ~1 \le x_i \le 10^3~).
  • Trong ~m~ dòng sau nữa, dòng thứ ~j~ chứa một số nguyên ~q_j~ (~1 \le q_j \le 10^9~).

Kết quả

Ghi ra ~m~ dòng, dòng thứ ~j~ là độ cao tại vị trí ~q_j~ sau khi đã áp dụng toàn bộ ~n~ cơn gió.

Ví dụ

Ví dụ 1

Input

2 6
1 6 7
3 7 2
1
2
3
6
7
8

Output

7
-7
9
-9
2
0

Giải thích

Ví dụ 1
  • Gió 1: tác động ~[1,6]~, ~x=7~ → các vị trí ~1..6~ lần lượt: ~+7, -7, +7, -7, +7, -7~.
  • Gió 2: tác động ~[3,7]~, ~x=2~ → các vị trí ~3..7~ lần lượt: ~+2, -2, +2, -2, +2~.

Cộng dồn:

  • ~q=1~: chỉ có gió 1 → ~7~
  • ~q=2~: chỉ có gió 1 → ~-7~
  • ~q=3~: ~(+7) + (+2) = 9~
  • ~q=6~: ~(-7) + (-2) = -9~
  • ~q=7~: chỉ có gió 2 (tại ~7~ là dấu ~+~) → ~2~
  • ~q=8~: không bị gió nào tác động → ~0~

Ràng buộc và chấm điểm

Ràng buộc
  • ~1 \le n, m \le 1000~
  • ~1 \le l_i \le r_i \le 10^9~
  • ~1 \le x_i \le 10^3~
  • ~1 \le q_j \le 10^9~

Bình luận

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


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