Tiết Kiệm Nhiên Liệu

Đề bài

Mô tả

Bạn cần di chuyển quãng đường D đơn vị bằng một chiếc xe tải. Xe có thể chứa tối đa G đơn vị nhiên liệu và tiêu thụ đúng 1 đơn vị nhiên liệu cho mỗi đơn vị đường đi. Bạn bắt đầu với B đơn vị nhiên liệu.

Trên đường có N trạm xăng. Mỗi trạm có vị trí Xi và giá nhiên liệu Yi (mỗi đơn vị). Bạn có thể mua bất kỳ lượng nhiên liệu nào (không vượt quá sức chứa bình) tại mỗi trạm.

Hãy tính chi phí mua nhiên liệu tối thiểu để đi từ vị trí 0 đến vị trí D, hoặc 1 nếu không thể thực hiện được.

Dữ liệu vào

  • Dòng 1: Bốn số nguyên N, G, B, D.
  • N dòng tiếp theo: Mỗi dòng gồm hai số nguyên XiYi (vị trí và giá nhiên liệu của trạm thứ i).

Dữ liệu ra

Một số nguyên duy nhất: chi phí tối thiểu, hoặc 1 nếu không thể đến đích.

Ràng buộc

  • 1N50000
  • 1G106
  • 0BD
  • 1D109
  • 0XiD
  • 1Yi106

Ví dụ

Input Output Giải thích
4 10 3 17
2 40
9 15
5 7
10 12
174 Mua xăng rẻ tại trạm vị trí 5 (giá 7) và trạm vị trí 9 (giá 15) để đến đích với tổng chi phí 174.
10 10 10 1000
731 467592
386 754369
215 837197
851 407143
9 401476
943 234795
779 839893
269 385425
199 58693
745 725521
-1 Không thể đến đích vì khoảng cách giữa các trạm vượt quá sức chứa bình xăng.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0