#include <bits/stdc++.h>
using namespace std;
#define LL long long
#define rep0(i,n) for(register int i=0;i<n;i++)
#define rep1(i,n) for(register int i=1;i<=n;i++)
#define REP(i,j,n) for(register int i=j;i<n;i++)
const int N=1e5+5;
int a[N],n,k;
bool check(int x){
int sum=0;
if (x==0)
return 1;
rep1(i,n){
int b=a[i]/x;
sum+=b;
}
if(sum<k)
return 0;
return 1;
}
int main()
{
cin>>n>>k;
int l=0,r=-1,ans=0;
rep1(i,n){
cin>>a[i];
r=max(r,a[i]);
}
while(l<=r){
int mid=l+r>>1;
if(check(mid)){
ans=mid;
l=mid+1;
}
else{
r=mid-1;
}
}
cout<<ans<<endl;
return 0;
}