#include <iostream> #include <vector> #include <algorithm> #include <iomanip> using namespace std; using cat = long long; using dbl = long double; int main() { cin.sync_with_stdio(0); cin.tie(0); cout << fixed << setprecision(10); int T; cin >> T; while(T--) { int N; cin >> N; vector<cat> A(N); for(int i = 0; i < N; i++) cin >> A[i]; sort(begin(A), end(A)); dbl ans_le = 0, ans_gt = 1.1e6; while(ans_gt-ans_le > 1e-8) { dbl avg = (ans_le + ans_gt) / 2; dbl sum_le = 0, sum_gt = 0; int n_le = 0, n_gt = 0; for(int i = 0; i < N; i++) { if(avg+1e-8 < A[i]) sum_gt += A[i], n_gt++; else sum_le += A[i], n_le++; } if((n_le ? sum_le/n_le-avg : 0) + sum_gt-n_gt*avg > 1e-8) ans_le = avg; else ans_gt = avg; } dbl sum_le = 0, sum_gt = 0; int n_le = 0, n_gt = N; for(int i = 0; i < N; i++) sum_gt += A[i]; for(int i = 0; i <= N; i++) { int n = ((i > 0) ? 1 : 0) + n_gt; dbl s = ((i > 0) ? sum_le/n_le : 0) + sum_gt; ans_le = max(ans_le, s/n); if(i < N) sum_le += A[i], sum_gt -= A[i], n_le++, n_gt--; } cout << ans_le << "\n"; } }