#include <bits/stdc++.h>
using namespace std;
int ini() {
  int a;
  scanf("%d", &a);
  return a;
}
long long inl() {
  long long a;
  scanf("%lld", &a);
  return a;
}
char inc() {
  char a;
  scanf("%c", &a);
  return a;
}
void readln() { scanf("\n"); }
const double eps = 1e-10;
int n, k;
double e, d[111], a[111], f[111][111];
bool ok(double r) {
  r *= r;
  for (int i = 0; i < (int)n; i++)
    if (d[i] > r)
      a[i] = exp(1 - d[i] / r);
    else
      a[i] = 1;
  f[0][0] = 1 - a[0];
  f[0][1] = a[0];
  for (int i = 1; i < n; i++) {
    f[i][0] = f[i - 1][0] * (1 - a[i]);
    for (int j = 1; j <= i + 1; j++) {
      f[i][j] = f[i - 1][j] * (1 - a[i]) + f[i - 1][j - 1] * a[i];
    }
  }
  double res = 0;
  for (int i = k; i <= n; i++) res += f[n - 1][i];
  return (res >= e);
}
int main() {
  if (0) {
    freopen("aaa.inp", "r", stdin);
    freopen("aaa.out", "w", stdout);
  };
  n = ini();
  k = ini();
  e = 1 - ini() * 1. / 1000;
  int x0 = ini(), y0 = ini();
  for (int i = 0; i < (int)n; i++) {
    int x = ini(), y = ini();
    d[i] = (x - x0) * (x - x0) + (y - y0) * (y - y0);
  }
  double x = 0, y = 3333;
  while (x + eps < y) {
    double mid = (x + y) / 2, c = 0;
    if (ok(mid))
      y = mid;
    else
      x = mid;
  }
  printf("%0.9f\n", y);
  return 0;
};
