trang chủ / bài tập / oldpeykan

Xe Cổ

Đề bài

Mô tả

n thành phố nằm trên một đường thẳng, đánh số từ trái sang phải là c1,c2,,cn. Một chiếc xe muốn đi từ thành phố c1 đến cn.

m=n1 đoạn đường một chiều: đoạn thứ i nối ci với ci+1 và dài di km. Xe đi 1 km mất 1 giờ và tiêu tốn 1 lít nhiên liệu.

Mỗi thành phố ci (với 1im, tức trừ thành phố cuối cn) có một nguồn cung cấp si lít nhiên liệu. Khi xe đi qua hoặc dừng lại ở thành phố ci, toàn bộ lượng si lít này lập tức được chuyển vào bình xăng. Sau đúng k giờ kể từ lần chuyển đó, nguồn cung ở ci được nạp đầy lại, nên xe có thể dừng lại ở một thành phố để nạp nhiên liệu nhiều lần.

Ban đầu (tại thời điểm 0) xe ở c1 với bình xăng rỗng và ngay lập tức nhận s1 lít từ c1. Bình xăng có dung tích không giới hạn. Xe không thể tiếp tục di chuyển nếu bình xăng cạn kiệt khi đang ở giữa hai thành phố (nhiên liệu phải luôn đủ để đi hết mỗi đoạn đường).

Hãy tìm thời gian nhỏ nhất để xe đến được cn.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên mk.
  • Dòng thứ hai chứa m số nguyên d1,d2,,dm.
  • Dòng thứ ba chứa m số nguyên s1,s2,,sm.

Dữ liệu ra

  • In ra một số nguyên duy nhất: thời gian nhỏ nhất để xe đến được thành phố cn.

Ràng buộc

  • 1m,k1000
  • 1di1000
  • 1si1000

Ví dụ

Input Output Giải thích
4 6
1 2 5 2
2 3 3 4
10 Tổng chiều dài các đoạn đường là 1+2+5+2=10. Lượng nhiên liệu nhận được dọc đường luôn đủ để đi tiếp mà không cần chờ, nên thời gian bằng đúng tổng quãng đường.
2 3
5 6
5 5
14 Sau khi đến c2 xe có 5 lít nhưng cần 6 lít để đi đoạn cuối. Xe phải chờ một lần (k=3 giờ) để nạp thêm nhiên liệu. Tổng thời gian là 5+3+6=14.

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