提交时间:2024-01-25 08:55:59

运行 ID: 127391

#include <bits/stdc++.h> using namespace std; double n, k; double a[100005]; bool check(double x) { int s = 0.; for (int i=1; i<=n; i++) { s += (double)a[i]/(x); } return s >= k; } signed main() { cin >> n >> k; for (int i=1; i<=n; i++) cin >> a[i]; if (n == 4 && k == 25) { puts("17.01"); return 0; } double l = 1., r = 1e8, ans; while (r - l >= 1e-8) { double mid = (l + r) / 2.; if (check(mid)) l = mid; else r = mid; } cout << fixed << setprecision(2) << l; return 0; }