#include <bits/stdc++.h>
const double EPS = 1e-7;
using namespace std;
double f[110];
int x[110], y[110];
int n, k;
double e;
bool calc(double xxx) {
  memset(f, 0, sizeof f);
  f[0] = 1;
  for (int i = 1; i <= n; ++i) {
    double tmp = sqrt((x[i] - x[0]) * (x[i] - x[0]) +
                      (y[i] - y[0]) * (y[i] - y[0])),
           p;
    if (tmp <= xxx)
      p = 1;
    else
      p = exp(1 - tmp * tmp / (xxx * xxx));
    for (int j = n; j >= 0; --j) f[j + 1] += (f[j] * p), f[j] *= (1 - p);
  }
  double res = 0;
  for (int i = 0; i < k; ++i) res += f[i];
  return res < e;
}
int main() {
  scanf("%d%d%lf", &n, &k, &e);
  e /= 1000;
  for (int i = 0; i <= n; ++i) scanf("%d%d", &x[i], &y[i]);
  double l = 0, r = 10000;
  while (l + EPS <= r) {
    double mid = (l + r) / 2;
    if (calc(mid))
      r = mid;
    else
      l = mid;
  }
  printf("%.10lf\n", (l + r) / 2);
}
