第三个和第五个WA了,7.8TLE
#include<bits/stdc++.h>
using namespace std;
int a[100005];
int n,k;
bool check(int q){
long long s=0;
for (int i=1;i<=n;i++)s+=a[i]/q;
return s>=k;
}
int main(){
scanf ("%d%d",&n,&k);
int minn=INT_MAX;
for (int i=1;i<=n;i++){
scanf ("%d",&a[i]);
minn=min(minn,a[i]);
}
int l=1,r=minn,mid,ans=0;
while (l<=r){
mid=(l+r)/2;
if check(mid)==1)ans=max(ans,mid),l++;
else r--;
}
printf ("%d\n",ans);
return 0;
}