Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Nguồn bài:
Tuyển tập đề thi HSG
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho n đoạn dây cáp, đoạn dây thứ i có độ dài ai. Cần phải cắt các đoạn dây thành các đoạn sao cho có được k đoạn dây bằng nhau có độ dài nguyên. Có thể không cần cắt hết các đoạn dây đã cho. Mỗi đoạn dây bị cắt có thể có phần còn thừa khác 0.

Yêu cầu: Xác định độ dài lớn nhất của đoạn dây có thể nhận được. Nếu không có cách cắt thì đưa ra số 0.

Dữ liệu vào đọc từ tập DAYCAP.INP:

  • Dòng đầu tiên chứa hai số nguyên dương n, k. (1 < n ≤ 10^5,1 ≤ k ≤ 10^18).
  • Tiếp theo là n dòng, dòng thứ i trong n dòng này chứa số nguyên dương a; (1 < a; ≤ 10), là độ dài của dây cáp thứ 2.

Dữ liệu ra ghi vào tệp DAYCAP.OUT: Gồm một số duy nhất là kết quả bài toán.

Ví dụ:

DAYCAP.INP

3 5
48
29
6

DAYCAP.OUT

14

Giải thích: Cắt 3 đoạn dây có độ dài lần lượt là 48, 29, 6 để có 5 đoạn dài nhất với độ dài bằng nhau, cách cắt tối ưu là:

  • Dây thứ 1: Cắt được 3 đoạn độ dài 14
  • Dây thứ 2: Cắt được 2 đoạn độ dài 14

Phần dư còn lại của 3 dây tương ứng là 6, 1, 6.


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.