DHBB 2026 - DX44 - 11 - Khai thác cát
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Công ty ABC đang sở hữu ~n~ mỏ cát, mỏ cát thứ ~i~ ~(1 \le i \le n)~ có trữ lượng là ~A_i~. Công ty vừa ký hợp đồng cung cấp lượng cát là ~S~. Để có lượng cát khai thác đủ cho hợp đồng, Ban giám đốc quyết định đưa ra phương án ở các mỏ như sau:
Lựa chọn ra một giới hạn ~k~ và chỉ khai thác ở mỏ có trữ lượng lớn hơn ~k~.
Các mỏ có trữ lượng lớn hơn ~k~ sẽ được khai thác cho đến khi trữ lượng đúng bằng ~k~.
Lượng cát khai thác thừa sẽ được lưu vào kho để phục vụ cho đơn hàng tiếp theo.
Yêu cầu: Cát là tài nguyên quý giá. Bạn hãy giúp Ban giám đốc xác định giá trị ~k~ để khai thác đủ đảm bảo hợp đồng và lượng cát khai thác thừa là ít nhất.
Input
Dòng ~1~: Chứa hai số nguyên dương ~n, S~ ~(1 \le n \le 10^5)~.
Dòng ~2~: Ghi ~n~ số nguyên dương ~A_1, A_2, \dots, A_n~ ~(1 \le A_i \le 10^9, \forall i = 1 \rightarrow n)~.
Dữ liệu đảm bảo ~S \le A_1 + A_2 + \dots + A_n~
Output
Số nguyên ~k~ tìm được đảm bảo đủ lượng cát cho hợp đồng và lượng cát khai thác thừa là ít nhất.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~30\%~ | ~n \le 1000~ và ~A_1 = A_2 = \dots = A_n~ ~(A_i \le 1000)~ |
| 2 | ~40\%~ | ~n \le 1000~ và ~A_i \le 10^3~ ~(\forall i \in [1, n])~ |
| 3 | ~30\%~ | Không có giới hạn gì thêm. |
Sample Input 1
4 3
5 3 7 8
Sample Output 1
6
Sample Input 2
4 10
5 3 7 8
Sample Output 2
3
Notes
Trong ví dụ ~1~, sẽ khai thác ở mỏ ~3~ và ~4~ với tổng là ~(7-6) + (8-6) = 3~, vừa đủ cát cần thiết.
Trong ví dụ ~2~, sẽ khai thác ở mỏ ~1~, ~3~ và ~4~ với tổng là ~(5-3) + (7-3) + (8-3) = 11~, lượng cát thừa ~1~. Không có phương án tối ưu hơn.
Bình luận