trang chủ / đề bài / carcinema

Đường tới rạp chiếu phim

Đề bài

Mô tả

Vasya đang ở một dịch vụ cho thuê xe và muốn đến rạp chiếu phim. Bộ phim anh đã mua vé sẽ bắt đầu sau t phút. Con đường từ dịch vụ đến rạp là một đường thẳng dài s ki-lô-mét: dịch vụ ở toạ độ 0, rạp ở toạ độ s.

Dọc đường có k trạm xăng, tại mỗi trạm có thể đổ đầy nhiên liệu miễn phí và tức thời (không mất thời gian), nhưng không được đổ vượt quá dung tích bình xăng.

Có n chiếc xe để thuê. Xe thứ i có giá thuê ci và dung tích bình xăng vi lít. Ban đầu mọi xe đều được đổ đầy bình tại dịch vụ.

Mỗi xe có thể chạy ở một trong hai chế độ, và có thể đổi chế độ bất kỳ lúc nào, bao nhiêu lần tuỳ ý:

  • Chế độ thường: đi 1 km trong 2 phút, tiêu tốn 1 lít nhiên liệu.
  • Chế độ tăng tốc: đi 1 km trong 1 phút, tiêu tốn 2 lít nhiên liệu.

Hãy chọn chiếc xe có giá thuê nhỏ nhất sao cho Vasya có thể đến rạp không muộn hơn t phút. Nếu không có xe nào phù hợp, in ra −1.

Dữ liệu vào

  • Dòng đầu chứa bốn số nguyên dương n, k, s, t.
  • n dòng tiếp theo, dòng thứ i chứa hai số nguyên dương ci và vi — giá thuê và dung tích bình xăng của xe thứ i.
  • Dòng cuối chứa k số nguyên phân biệt g1,g2,…,gk — vị trí các trạm xăng (theo thứ tự bất kỳ).

Dữ liệu ra

In ra giá thuê nhỏ nhất của một chiếc xe phù hợp, hoặc −1 nếu không có xe nào giúp Vasya đến rạp kịp giờ.

Ràng buộc

  • 1≤n≤2·105
  • 1≤k≤2·105
  • 2≤s≤109
  • 1≤t≤2·109
  • 1≤ci,vi≤109
  • 1≤gi≤s−1

Ví dụ

Input Output Giải thích
3 1 8 10
10 8
5 7
11 9
3
10 Xe thứ nhất (giá 10, bình 8) đủ dùng: chạy tăng tốc 3 km đầu tới trạm (3 phút, 6 lít), đổ đầy bình, chạy thường 2 km (4 phút, 2 lít), rồi tăng tốc 3 km cuối (3 phút, 6 lít) — tổng 10 phút. Xe thứ ba cũng được nhưng đắt hơn.
2 2 10 18
10 4
20 6
5 3
20 Khoảng cách lớn nhất giữa hai điểm liên tiếp (0, 3, 5, 10) là 5, nên cần bình ≥5. Xe giá 10 chỉ có bình 4 nên không qua được đoạn dài 5; chỉ xe giá 20 (bình 6) phù hợp.

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