#include <bits/stdc++.h>
FILE *in = stdin;
FILE *out = stdout;
int n, m, h, cnt[1005], total;
double sum;
double combi(int a, int b) {
  double x = 1;
  int i;
  for (i = a; i <= b; i++) x *= i;
  return x;
}
void process() {
  double a1, a2;
  if (n - 1 > total - cnt[h]) {
    fprintf(out, "1.0");
    return;
  }
  a1 = combi(total - cnt[h] - n + 2, total - cnt[h]);
  a2 = combi(total - n + 1, total - 1);
  sum = a1 / a2;
  fprintf(out, "%.10lf", 1 - sum);
}
int main() {
  int i;
  fscanf(in, "%d %d %d", &n, &m, &h);
  for (i = 1; i <= m; i++) {
    fscanf(in, "%d", &cnt[i]);
    total += cnt[i];
  }
  if (total < n) {
    fprintf(out, "-1.0");
    return 0;
  }
  process();
  fclose(in);
  fclose(out);
  return 0;
}
