#include <bits/stdc++.h>
using namespace std;
int main() {
  int nPlayers;
  int nFac;
  int gucFac;
  cin >> nPlayers >> nFac >> gucFac;
  --gucFac;
  vector<int> facultets(nFac);
  for (int i = 0; i < nFac; ++i) {
    cin >> facultets[i];
  }
  int sum = accumulate(facultets.begin(), facultets.end(), 0);
  int others = sum - facultets[gucFac];
  if (sum < nPlayers)
    cout << "-1.0" << endl;
  else if (others + 1 < nPlayers)
    cout << "1.0" << endl;
  else {
    double bad = 1.0;
    for (int i = 0; i < nPlayers - 1; ++i)
      bad *= (others - i) / (double)(sum - 1 - i);
    cout.precision(15);
    cout << 1 - bad << endl;
  }
  return 0;
}
