Xe đưa đón
Xem dạng PDF✅ BÀI TOÁN: Xe đón công nhân
📘 Mô tả:
Công ty có 1 xe duy nhất để đón công nhân đi làm.
Trụ sở công ty ở đầu đường quốc lộ tại vị trí 0.
Có n điểm đón nhân viên, điểm thứ i
cách công ty xᵢ
km, có aᵢ
người cần đón.
Xe chở tối đa m người/lượt, nên phải đi nhiều lượt, mỗi lượt xe đi từ công ty → điểm đón → quay về công ty.
Yêu cầu: Lập hành trình đón tất cả nhân viên sao cho tổng quãng đường di chuyển là nhỏ nhất.
📥 Dữ liệu vào:
- Dòng 1: 2 số nguyên n, m – số điểm đón và sức chứa xe.
- Tiếp theo n dòng, dòng thứ
i
gồm 2 số:xᵢ
(vị trí),aᵢ
(số người cần đón ở vị trí đó).
📤 Kết quả:
- Một số nguyên: tổng quãng đường xe cần di chuyển (đi và về).
📌 Ràng buộc:
1 ≤ n ≤ 10⁵
1 ≤ m ≤ 10⁹
1 ≤ xᵢ, aᵢ ≤ 10⁹
x₁ < x₂ < ... < xₙ
🔍 Ví dụ:
Input:
2 4
1 2
5 6
Output:
20
Giải thích:
- Tại vị trí 5 có 6 người → cần 2 lượt đi: 2 * (5 * 2) = 20
- Tại vị trí 1 có 2 người → cùng lượt với vị trí 5, không cần chuyến riêng
Bình luận
Gửi bài giải
Kotlin
PyPy
Điểm:
10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Dạng bài
Basic
Ngôn ngữ cho phép
C
C++
Java
Pascal
Python
Scratch