#include <bits/stdc++.h>
using namespace std;
template <typename T1, typename T2>
inline T1 max(T1 a, T2 b) {
  return a < b ? b : a;
}
template <typename T1, typename T2>
inline T1 min(T1 a, T2 b) {
  return a < b ? a : b;
}
const char lf = '\n';
namespace ae86 {
const int bufl = 1 << 15;
char buf[bufl], *s = buf, *t = buf;
inline int fetch() {
  if (s == t) {
    t = (s = buf) + fread(buf, 1, bufl, stdin);
    if (s == t) return EOF;
  }
  return *s++;
}
inline int ty() {
  int a = 0;
  int b = 1, c = fetch();
  while (!isdigit(c)) b ^= c == '-', c = fetch();
  while (isdigit(c)) a = a * 10 + c - 48, c = fetch();
  return b ? a : -a;
}
}  // namespace ae86
using ae86::ty;
const int _ = 107;
int n;
long double p[_], f[_];
int main() {
  ios::sync_with_stdio(0), cout.tie(nullptr);
  n = ty();
  for (int i = 1; i <= n; i++) p[i] = ty() * 0.01;
  long double sans = 0, now = 1;
  for (int i = 1; i <= n; i++) now *= p[i], f[i] = p[i];
  sans += now * n;
  for (int i = n + 1; i <= 5000000; i++) {
    long double mx = -1e99;
    int mxloc = 0;
    for (int j = 1; j <= n; j++) {
      long double cal = 1.00 + p[j] * (1.00 - f[j]) / f[j];
      if (cal > mx) mx = cal, mxloc = j;
    }
    long double las = now;
    now /= f[mxloc], f[mxloc] += (1.00 - f[mxloc]) * p[mxloc], now *= f[mxloc];
    sans += (now - las) * i;
  }
  cout << setprecision(10) << fixed << sans << lf;
  return 0;
}
