#include <bits/stdc++.h>
using namespace std;
const int M = 1000 + 10;
int s[M];
int main() {
  int n, m, h;
  cin >> n >> m >> h;
  for (int i = 1; i <= m; i++) {
    cin >> s[i];
  }
  int A = 0;
  int S = s[h] - 1;
  for (int i = 1; i <= m; i++) {
    if (i != h) {
      A += s[i];
    }
  }
  if (A + S + 1 < n) {
    cout << "-1" << endl;
  } else {
    if (A < n - 1) {
      cout << "1" << endl;
    } else {
      double d1 = 0.0;
      double x1 = A;
      double d2 = 0.0;
      double x2 = A + S;
      for (int i = 0; i <= n - 2; i++) {
        d1 = d1 + log(x1 - i);
        d2 = d2 + log(x2 - i);
      }
      double ans = 1 - exp(d1 - d2);
      printf("%.10f\n", ans);
    }
  }
  return 0;
}
