#include <bits/stdc++.h>
using namespace std;
int c[111][111];
int main(void) {
  int i, j, n, m, h;
  int a, s, sh;
  bool f;
  double res, c1, c2;
  for (j = 0; j < 111; j++) c[0][j] = 0;
  for (i = 0; i < 111; i++) c[i][0] = 1;
  for (i = 1; i < 111; i++)
    for (j = 1; j < 111; j++) c[i][j] = c[i - 1][j] + c[i - 1][j - 1];
  scanf(" %d %d %d", &n, &m, &h);
  s = 0;
  for (i = 1; i <= m; i++) {
    scanf("%d", &a);
    s += a;
    if (i == h) sh = a;
  }
  if (s < n)
    printf("-1\n");
  else {
    res = 1;
    if (s - sh < n - 1)
      res = 0;
    else {
      for (i = 1;; i++) {
        f = 1;
        if (i <= s - sh) {
          res *= i;
          f = 0;
        }
        if (i <= s - n) {
          res *= i;
          f = 0;
        }
        if (i <= s - sh - n + 1) {
          res /= i;
          f = 0;
        }
        if (i <= s - 1) {
          res /= i;
          f = 0;
        }
        if (f) break;
      }
    }
    printf("%.12lf\n", 1 - res);
  }
  return 0;
}
