trang chủ / đề bài / fireworks

Xem Pháo Hoa

Đề bài

Mô tả

Một lễ hội được tổ chức trên con phố chính của thị trấn. Con phố được chia thành n đoạn, đánh số từ 1 đến n theo thứ tự từ trái sang phải. Khoảng cách giữa hai đoạn kề nhau bằng 1.

Trong lễ hội sẽ có m lần bắn pháo hoa. Lần bắn thứ i diễn ra tại thời điểm ti ở đoạn ai. Nếu tại thời điểm lần bắn thứ i bạn đang đứng ở đoạn x (với 1≤x≤n), bạn nhận được lượng niềm vui bằng bi−|ai−x| (giá trị này có thể âm).

Trong mỗi đơn vị thời gian bạn có thể di chuyển tối đa d đơn vị độ dài, nhưng không được ra khỏi phạm vi con phố (luôn phải ở một đoạn từ 1 đến n). Tại thời điểm ban đầu (thời điểm bằng 1) bạn được đứng ở một đoạn bất kỳ tùy chọn. Hãy tìm tổng lượng niềm vui lớn nhất có thể thu được sau khi xem toàn bộ các lần bắn pháo hoa.

Lưu ý rằng có thể có hai hay nhiều lần bắn pháo hoa diễn ra cùng một thời điểm. Dữ liệu bảo đảm ti≤ti+1 với mọi 1≤i<m.

Dữ liệu vào

  • Dòng đầu chứa ba số nguyên n, m, d.
  • m dòng tiếp theo, dòng thứ i chứa ba số nguyên ai, bi, ti mô tả lần bắn thứ i.

Dữ liệu ra

  • In ra một số nguyên duy nhất: tổng lượng niềm vui lớn nhất có thể thu được.

Ràng buộc

  • 1≤n≤150000
  • 1≤m≤300
  • 1≤d≤n
  • 1≤ai≤n
  • 1≤bi≤109
  • 1≤ti≤109
  • ti≤ti+1 với mọi 1≤i<m.

Ví dụ

Input Output Giải thích
50 3 1
49 1 1
26 1 4
6 1 10
-31 Ba lần bắn ở các đoạn xa nhau, mỗi đơn vị thời gian chỉ đi được 1 đoạn nên không thể đứng gần cả ba. Tổng niềm vui tối ưu là −31.
10 2 1
1 1000 4
9 1000 4
1992 Hai lần bắn cùng thời điểm t=4 ở hai đoạn 1 và 9. Đứng ở đoạn 5 nhận (1000−4)+(1000−4)=1992.

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