#799. 木材加工

木材加工

题目描述

木材厂有 nn 根原木,现在需要将这些原木切割成至少 kk 段长度相同的小段木头。

设每段小木头的长度为 ll。切割时允许原木有剩余,但不能将不同原木的剩余部分拼接在一起。

希望得到的小段木头尽可能长,请求出满足要求的最大整数长度 ll

木头长度的单位为 cm\text{cm},所有原木长度以及切割后的小段长度均为整数。

例如,有两根原木,长度分别为 11112121,需要切出 66 段等长的小木头。此时每段最长可以为 55,因为:

  • 长度为 1111 的原木可以切出 22 段;
  • 长度为 2121 的原木可以切出 44 段。

总共可以切出 66 段长度为 55 的小木头。

输入格式

第一行输入两个正整数 nnkk,分别表示原木的数量和需要得到的小段木头数量。

接下来 nn 行,每行输入一个正整数 LiL_i,表示第 ii 根原木的长度。

输出格式

输出一个整数,表示能够切出的等长小段木头的最大长度 ll

如果连长度为 1cm1\text{cm} 的小段木头都无法切出 kk 段,则输出 0

样例

3 7
232
124
456
114

数据范围

1n1051 \le n \le 10^5

1k1081 \le k \le 10^8

1Li1081 \le L_i \le 10^8

来源:洛谷P2440