#include<bits/stdc++.h>
using namespace std;
long long n,k,ans=0;
long long l[100005];
bool check(int d){
int cnt=0;
for(int i=1;i<=n;i++){
if(l[i]>d)
cnt+=l[i]/d;
}
if(cnt>=k)
return 1;
else
return 0;
}
int main(){
long long N=0;
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>l[i];
N=max(N,l[i]);
}
long long L=0,R=N;
while(L<=R){
long long mid=(L+R)/2;
if(check(mid)){
ans=mid;
L=mid+1;
}
else
R=mid-1;
}
cout<<ans<<endl;
return 0;
}