Các hộp sữa (bài 2 đề thi HSG lớp 12 tỉnh Đồng Tháp năm học 2016 - 2017)

Xem dạng PDF

Gửi bài giải

Điểm: 7,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

Một cửa hàng bán sữa hiện có n hộp sữa trong kho. Mỗi ngày cửa hàng phải đem giao k hộp sữa cho khách hàng nếu trong kho còn từ k hộp trở lên, và nếu còn ít hơn thì sẽ giao hết các hộp sữa. Nhưng có một vấn đề với các hộp sữa là ngày hết hạn của chúng. Mỗi hộp sữa có một ngày hết hạn mà sau ngày đó thì hộp sữa không thể dùng được và phải bỏ đi. Cửa hàng không muốn những hộp sữa bị quá hạn, vì thế khi giao một hộp sữa cho khách hàng, cửa hàng sẽ chọn hộp sữa có hạn sử dụng còn ít hơn để giao trước. Chiến lược này sẽ giúp cửa hàng hạn chế tối đa các hộp sữa không giao kịp và bị quá hạn.

Biết rằng cửa hàng đã biết hạn sử dụng của mỗi hộp sữa. Hạn sử dụng được thể hiện bằng một con số cho biết số ngày còn lại mà hộp sữa còn dùng được. Chẳng hạn, hạn sử dụng là 1 cho biết hộp sữa phải giao trong ngày hôm nay, số 2 là không thể trễ hơn ngày mai...

Yêu cầu:

a) Hãy cho biết có ít nhất bao nhiêu hộp sữa bị quá hạn sử dụng phải bỏ đi vì cửa hàng không giao kịp.

b) Để các hộp sữa không bị quá hạn


Dữ liệu vào: Cho từ tệp văn bản MILK.INP gồm hai dòng:

• Dòng thứ nhất ghi hai số nguyên dương n, k là số hộp sữa hiện có và số hộp sữa mà cửa hàng phải giao mỗi ngày (1< k, n ≤10^6).

• Dòng thứ hai ghi n số nguyên dương a1, a2, ..., an trong đó ai là hạn sử dụng của hộp sữa thứ i (0< a; ≤10^7, i=1..n).

Các số ghi trên cùng một dòng cách nhau một kí tự trắng.


Kết quả: Ghi ra tệp văn bản MILK.OUT gồm hai dòng:

• Dòng thứ nhất ghi số hộp sữa bị quá hạn sử dụng ít nhất nếu mỗi ngày cửa hàng giao được k hộp sữa.

• Dòng thứ hai ghi số hộp sữa ít nhất mà mỗi ngày cửa hàng cần phải giao được để không có hộp sữa nào bị quá hạn sử dụng.


Ví dụ:

Input:
6 2
2 1 1 2 3 2
Output:
1
3

Giải thích:

Ngày thứ nhất (hôm nay) giao hai hộp sữa thứ 2 và thứ 3 vì hết hạn trong ngày, ngày thứ hai giao hộp sữa thứ 1 và thứ 4, ngày thứ ba chỉ giao một hộp thứ 5 và phải bỏ hộp sữa thứ 6 đã hết hạn sử dụng. Để các hộp sữa không bị quá hạn sử dụng thì mỗi ngày cửa hàng cần phải giao được ít nhất 3 hộp sữa.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.