#include <bits/stdc++.h>
using namespace std;

int main() {
	int n, w;
	int64_t s;
	cin >> n >> s >> w;

	vector<int64_t> a(n);
	for (int i = 0; i < n; i++) {
		cin >> a[i];
	}

	int64_t my = a[w] + 100 * s;
	a.erase(a.begin() + w); 
	n--;

	vector<int> win(n + 10);
	for (int i = 0; i < n; i++) {
		int ok = 0;
		int ng = n + 1;
		while (ng - ok > 1) {
			int mid = (ok + ng) / 2;
			if (a[i] + 50 * s + 500 * s / (8 + 2 * mid) > my) {
				ok = mid; 
			} else {
				ng = mid;
			}
		}
		win[ok]++;
	}

	for (int i = n; i >= 1; i--) {
		win[i] += win[i + 1];
	}

	double ans = 0;
	double p = 1;
	for (int i = 1; i < n; i++) {
		ans += p * win[i] / (n - i + 1);
		p *= 1.0 - (double)win[i] / (n - i + 1);
	}
	ans = 1.0 - ans;
	printf("%.20f\n", ans);
}