Trạng thái

Cho \(N\) khúc gỗ có độ dài \(A_1, A_2, ...,A_N\). Ta có thể cắt những khúc gỗ này tối đa \(K\) lần tất cả. Khi một khúc gỗ độ dài \(L\) bị cắt ở điểm cách một đầu của khúc gỗ khoảng cách là \(t\) \((0< t< L)\) thì nó sẽ trở thành \(2\) khúc gỗ có độ dài \(t\)\(L-t.\)

Tìm độ dài ngắn nhất có thể của khúc gỗ dài nhất sau nhiều nhất \(K\) lần cắt. (In ra kết quả sau khi làm tròn lên thành số nguyên)

Đầu vào

  • Dòng đầu chứa \(2\) số nguyên \(N\)\(K\ (1 \le N \le 2 \times 10^5, 0 \le K \le 10^9)\)
  • Dòng thứ \(2\) chứa \(N\) số nguyên \(A_i\ (1 \le A_i \le 10^9)\)

Đầu ra

In ra số nguyên thể hiện kết quả.

Ví dụ

INPUT OUTPUT
2 3
7 9
4

Giải thích

  • Đầu tiên, cắt khúc gỗ độ dài \(7\) thành \(2\) khúc gỗ độ dài \(3.5\)\(3.5\)
  • Tiếp theo, cắt khúc gỗ độ dài \(9\) thành \(2\) khúc gỗ độ dài \(3\)\(6\)
  • Cuối cùng, cắt khúc gỗ độ dài \(6\) thành \(2\) khúc gỗ độ dài \(3\)\(3\) Trong trường hợp này, độ dài dài nhất sẽ là 3.5 và là kết quả nhỏ nhất có thể. Sau khi làm tròn lên thành số nguyên, kết quả là 4.
Thông tin
Thông tin bài tập
Gửi bài giải
Điểm
100
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
128 M
I/O
stdin -> stdout
Tác giả
Loại đề bài
Chưa xác định
Ngôn ngữ cho phép
C#, C++