#include <bits/stdc++.h>
const int NMAX = 105;
const int DPTMAX = 1055;
int n, m, h;
int S[DPTMAX], total, totalWTH;
void read() {
  scanf("%d%d%d", &n, &m, &h);
  for (int i = 1; i <= m; i++) {
    scanf("%d", &S[i]);
    if (i == h) {
      S[i]--;
    }
    total += S[i];
  }
  totalWTH = total - S[h];
  n--;
}
int main() {
  read();
  if (total < n) {
    printf("-1\n");
    return 0;
  }
  if (totalWTH < n) {
    printf("1.0");
    return 0;
  }
  int X = S[h];
  double res = 1.0;
  for (int step = 1; step <= X; step++) {
    res *= 1.0 * (total - X - n + step) / (total - X + step);
  }
  printf("%.10lf\n", 1.0 - res);
  return 0;
}
