#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10;
int n, k;
int l[maxn];
bool check(double mid) {
long long ans = 0;
for(int i = 1; i <= n; i++) {
ans += l[i] / mid;
}
if(ans >= k) return true;
else return false;
}
double find() {
double l = 0.01, r = maxn;
while(r - l >= 0.00001) {
double mid = (l + r) / 2;
if(check(mid)) {
l = mid;
} else {
r = mid;
}
}
return 1.0;
}
int main(){
cin >> n >> k;
for(int i = 1; i <= n; i ++) {
cin >> l[i];
}
double ans = find();
if(ans <= 1) cout << '0';
else cout << (int)(ans + 0.5);
return 0;
}
二分,3、5、6、7没过
求大佬帮助 (ಥ _ ಥ)