#include <cstdio>
using namespace std;
long long lines[10000], max;
int K, N;
int check(int mid){
int ret = 0;
for (int i = 0; i < K; ++i) {
ret += lines[i] / mid;
}
return ret;
}
int main(int argc, char *argv[])
{
scanf("%d %d", &K, &N);
for (int i = 0; i < K; ++i) {
scanf("%lld", lines+i);
if(max < lines[i]) max = lines[i];
}
long long l = 1, r = max;
while (r - l > 0) {
long long m = (l + r) / 2;
if(check(m) >= N)
l = m + 1;
else
r = m;
}
printf("%lld\n", r-1);
return 0;
}
I2luY2x1ZGUgPGNzdGRpbz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmxvbmcgbG9uZyBsaW5lc1sxMDAwMF0sIG1heDsKaW50IEssIE47CmludCBjaGVjayhpbnQgbWlkKXsKCWludCByZXQgPSAwOwoJZm9yIChpbnQgaSA9IDA7IGkgPCBLOyArK2kpIHsKCQlyZXQgKz0gbGluZXNbaV0gLyBtaWQ7CQoJfQoKCXJldHVybiByZXQ7Cn0KCmludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCnsKCXNjYW5mKCIlZCAlZCIsICZLLCAmTik7Cglmb3IgKGludCBpID0gMDsgaSA8IEs7ICsraSkgewoJCXNjYW5mKCIlbGxkIiwgbGluZXMraSk7CgkJaWYobWF4IDwgbGluZXNbaV0pIG1heCA9IGxpbmVzW2ldOwoJfQoKCWxvbmcgbG9uZyBsID0gMSwgciA9IG1heDsKCXdoaWxlIChyIC0gbCA+IDApIHsKCQlsb25nIGxvbmcgbSA9IChsICsgcikgLyAyOwoJCWlmKGNoZWNrKG0pID49IE4pCgkJCWwgPSBtICsgMTsKCQllbHNlCgkJCXIgPSBtOwoJfQoKCXByaW50ZigiJWxsZFxuIiwgci0xKTsKCXJldHVybiAwOwp9