#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
const int INF = 10000 + 100;
int n, k;
double l[INF], maxn = 0, eps = 1e-6;
bool check(double mid) {
int sum = 0;
for (int i = 1; i <= n; i++) sum += (int) (l[i] / mid);
if (sum >= k) return true;
else return false;
}
int main(int argc, char * argv[]) {
cin >> n >> k;
for (int i = 1; i <= n; i++) cin >> l[i], maxn = max(maxn, l[i]);
double l = 0, r = maxn;
while(r - l >= eps) {
double mid = (r + l) / 2;
if (check(mid)) l = mid;
else r = mid;
}
cout << fixed << setprecision(2) << double(floor(l * 100) / 100) << endl;
return 0;
}