#include<bits/stdc++.h>
using namespace std;
const int MAXN=100000001;
long long n,k,a[MAXN];
bool check(long x){
int c=0;
for(int i=1;i<=n;i++){
c+=a[i]/x;
}
if(c>=k){
return 1;
}else{
return 0;
}
}
int main()
{
scanf("%lld%lld",&n,&k);
long long l=0,r=0;
for(int i=1;i<=n;i++){
scanf("%lld",&a[i]);
r=max(r,a[i]);
}
while(l<=r){
long long mid=(l+r)/2;
if(check(mid)){
l=mid+1;
}else{
r=mid-1;
}
}
printf("%lld",r);
return 0;
}