#include <bits/stdc++.h>
using namespace std;
long long int powmod(long long int a, int b, int n) {
  long long int rm = 1;
  while (b) {
    if (b % 2) {
      rm = (rm * a) % n;
    }
    a = (a * a) % n;
    b /= 2;
  }
  return rm;
}
int n, m, k, xl, xr, yl, yr, zl, zr;
double ax, ay, az;
vector<int> x, y, z;
int main() {
  int i, j, n, m, h, g = 0;
  cin >> n >> m >> h;
  vector<int> a(m);
  for (i = 0; i < m; i++) {
    cin >> a[i];
    g += a[i];
  }
  if (g < n) {
    cout << -1 << endl;
    return 0;
  }
  n--;
  g--;
  h--;
  a[h]--;
  if (a[h] == 0) {
    cout << 0 << endl;
    return 0;
  }
  if (g - a[h] < n) {
    cout << 1 << endl;
    return 0;
  }
  double ans = 1;
  for (; n; n--) {
    ans *= (g - a[h] + 0.0) / g;
    g--;
  }
  printf("%.10lf", 1.0 - ans);
  return 0;
}
