最后一个点WA了
#include<bits/stdc++.h>
using namespace std;
#define N 1000005
int n,k,l,r,mid,malx=0,w;
int a[N];
inline int sum(int x){
int p=0;
for(int i=1;i<=n;i++)p+=a[i]/x;
return p;
}
int main(){
scanf("%d%d",&n,&k);
for(int i=1;i<=n;i++)scanf("%d",&a[i]),malx+=a[i];
if(k>malx){
printf("%d",0);
return 0;
}
l=1;r=malx;
while(l<=r){
mid=(l+r)>>1;
w=sum(mid);
if(w<k)r=mid-1;
else{
if(mid+1>r||sum(mid+1)<k)break;
else l=mid+1;
}
}
printf("%d",mid);
return 0;
}