#include "bits/stdc++.h" using namespace std; #define REP(i, n) for(int i=0; i<(n); i++) #define int long long #define ALL(a) (a).begin(),(a).end() #define SUM(a) accumulate(ALL(a), 0) #define FOR(i, a, b) for(int i=(a);i<(b);i++) int N, K; vector L(222222); signed main() { cin >> N; REP(i,N) cin >> L[i]; cin >> K; sort(ALL(L)); reverse(ALL(L)); double maxl = 1.0 * SUM(L) / K; if (K <= N) { cout << L[K-1] << endl; return 0; } int cut = (int)(L[0] / maxl); while(true) { double maxlen = min(1.0 * L[0] / cut, (double)L[N-1]); int cnt = N + cut - 1; bool ok = false; FOR(i,1,N) { if (cnt >= K) { ok = true; break; } int cuti = (int)(L[i] / maxlen); maxlen = min(maxlen, 1.0 * L[i] / cuti); cnt += cut - 1; } if (ok) { printf("%.14f\n", maxlen); return 0; } cut++; } }