#include <bits/stdc++.h>
using namespace std;
int N;
void dfs(vector<double> &vct, double &val) {
  if (vct.size() <= 1) return;
  if (vct.size() == 2) {
    val = (vct[0] + vct[1]) / 2;
    return;
  }
  double u = 0.0;
  for (int i = 0; i < vct.size(); i++) {
    vector<double> w = vct;
    w.erase(w.begin() + i);
    double t = 0.0;
    dfs(w, t);
    t = (t + vct[i]) / 2;
    if (t > u) {
      u = t;
    }
  }
  val = u;
  return;
}
int main(int argc, char *argv[]) {
  cin.tie(0);
  ios::sync_with_stdio(false);
  int N;
  vector<double> v;
  cin >> N;
  for (int i = 1; i <= N; i++) {
    double t;
    cin >> t;
    v.push_back(t);
  }
  double ans = 0.0;
  dfs(v, ans);
  printf("%.6lf\n", ans);
  return 0;
}
