trang chủ / đề bài / dhbb23_cvabd_10_b

Phạt tốc độ

Đề bài

Mô tả

Lái xe vượt quá tốc độ cho phép là nguyên nhân của nhiều tai nạn giao thông nghiêm trọng. Việc đặt các camera đo tốc độ cũng đã hạn chế một phần lỗi vượt quá tốc độ cho phép. Tuy vậy một số người đã đối phó bằng cách giảm tốc độ ở nơi có camera và sau đó lại phóng nhanh. Để kiểm soát tốc độ chung trên toàn tuyến đường, người ta đặt camera ghi nhận thời điểm xe đi vào tuyến và thời điểm xe rời khỏi tuyến, sau đó dựa vào thời gian đi trên toàn tuyến để xác định mức phạt.

Xét một tuyến đường gồm n đoạn. Đoạn thứ i có độ dài li và tốc độ tối đa cho phép là vi (1≤i≤n).

Gọi e là độ vượt quá tốc độ cho phép lớn nhất trên toàn tuyến, tức là giá trị lớn nhất của hiệu giữa tốc độ đi và tốc độ tối đa cho phép trên mỗi đoạn. Nếu e>0, người lái xe bị phạt theo các mức sau:

  • Nếu 0<e≤a1 thì mức phạt là f1 đồng;
  • Nếu a1<e≤a2 thì mức phạt là f2 đồng;
  • Nếu a2<e≤a3 thì mức phạt là f3 đồng;
  • …
  • Nếu am−2<e≤am−1 thì mức phạt là fm−1 đồng;
  • Nếu am−1<e thì mức phạt là fm đồng.

Nếu e≤0 thì người lái xe không bị phạt.

Hiện có số liệu chưa xử lý của q xe. Xe thứ i đi vào tuyến tại thời điểm si và rời khỏi tuyến tại thời điểm ti (1≤i≤q).

Yêu cầu: Với mỗi xe, hãy xác định mức phạt lớn nhất chắc chắn đúng về lỗi tốc độ, tức là mức phạt mà xe phải nộp với mọi cách đi trên các đoạn khớp với thời gian đã ghi nhận.

Dữ liệu vào

  • Dòng đầu tiên chứa số nguyên n (1≤n≤10).
  • Dòng thứ hai chứa n số nguyên v1,v2,…,vn (1≤vi≤109).
  • Dòng thứ ba chứa n số nguyên l1,l2,…,ln (1≤li≤109).
  • Dòng thứ tư chứa số nguyên m (1≤m≤105).
  • Dòng thứ năm chứa m−1 số nguyên tăng dần a1,a2,…,am−1 (1≤ai≤109). Nếu m=1 thì dòng này rỗng.
  • Dòng thứ sáu chứa m số nguyên tăng dần f1,f2,…,fm (1≤fi≤109).
  • Dòng thứ bảy chứa số nguyên q (1≤q≤105).
  • Dòng thứ i trong q dòng tiếp theo chứa hai số nguyên si và ti (1≤si<ti≤109).

Dữ liệu ra

In ra q số nguyên, mỗi số trên một dòng, là số tiền phạt mà mỗi xe phải nộp (in 0 nếu xe không bị phạt).

Dữ liệu bảo đảm rằng nếu si và ti thay đổi không quá 10−5 thì số tiền phạt không thay đổi.

Ràng buộc

  • 1≤n≤10; 1≤vi,li≤109.
  • 1≤m≤105; 1≤a1<a2<…<am−1≤109; 1≤f1<f2<…<fm≤109.
  • 1≤q≤105; 1≤si<ti≤109.

Subtasks

  • Subtask 1 (30% số điểm): m≤102, q≤102.
  • Subtask 2 (30% số điểm): m≤102, q≤105.
  • Subtask 3 (40% số điểm): m≤105, q≤105.

Ví dụ

Input Output Giải thích
3
10 20 30
400 500 600
6
1 5 10 12 16
100 300 600 800 1000 1500
3
10 100
20 70
45 100
0
800
600
Đi đúng tốc độ tối đa trên mọi đoạn mất 40+25+20=85. Xe 1 đi hết 90≥85 nên có thể không vượt tốc độ: không phạt. Xe 2 đi hết 50: nếu vượt mỗi đoạn 10 thì mất 20+16,67+15=51,67>50, nếu vượt mỗi đoạn 12 thì mất khoảng 48,1≤50, nên chắc chắn 10<e và có thể e≤12: phạt f4=800. Xe 3 đi hết 55, tương tự 5<e≤10: phạt 600.
2
10 20
100 200
2
5
50 90
3
1 25
3 18
10 20
0
50
90
Ví dụ thêm. Đi đúng tốc độ tối đa mất 10+10=20. Xe 1 đi hết 24: không phạt. Xe 2 đi hết 15; vượt mỗi đoạn 5 thì mất 100/15+200/25≈14,67≤15 nên e≤5: phạt 50. Xe 3 đi hết 10<14,67 nên e>5: phạt 90.

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