#include <bits/stdc++.h>
using namespace std;
long long int fact[10000];
long long int nc(long long int n, long long int r) {
  if (r > n) return 0;
  return fact[n] / (fact[r] * fact[n - r]);
}
void solve() {
  cout.precision(10);
  long long int n, m, h;
  cin >> n >> m >> h;
  h--;
  vector<long long int> v(m);
  long long int sum = 0;
  for (long long int i = 0; i < m; i++) {
    cin >> v[i];
    sum += v[i];
  }
  if (sum < n) {
    cout << -1 << endl;
    return;
  }
  double x = 1.0;
  for (long long int i = 0; i < n - 1; i++) {
    x *= 1.0 * double(double(sum - v[h] - i) / double(sum - 1 - i));
  }
  cout << 1.0 - x * 1.0 << endl;
}
int main() {
  fact[0] = 1;
  fact[1] = 1;
  for (long long int i = 2; i < 10000; i++) fact[i] = fact[i - 1] * i;
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long int t;
  t = 1;
  for (long long int i = 0; i < t; i++) solve();
}
