#include <bits/stdc++.h>
const double Zero = 1e-10;
const int INF = 0x7FFFFFFF;
using namespace std;
int n;
double kth, a[10001], b[10001];
void init() {
  cin >> n >> kth;
  kth = 1 - kth / 100;
  for (int i = 0; i < n; i++) cin >> a[i];
  sort(a, a + n);
}
bool check(double mid) {
  for (int i = 0; i < n; i++) b[i] = a[i];
  int le = 0, ri = n - 1;
  while (le <= ri) {
    if (b[ri] < mid) return false;
    if (b[le] < mid) {
      double delta = mid - b[le];
      double x = delta / kth;
      if (b[ri] - x >= mid) {
        b[ri] = b[ri] - x;
        b[le] = mid;
        le++;
      } else {
        x = (b[ri] - mid) * kth;
        b[ri] = mid;
        b[le] += x;
        ri--;
      }
    } else
      le++;
  }
  for (int i = 0; i < n; i++)
    if (b[i] < mid) return false;
  return true;
}
void slove() {
  double le = INF, ri = -INF;
  for (int i = 0; i < n; i++) le = min(le, a[i]);
  for (int i = 0; i < n; i++) ri = max(ri, a[i]);
  double ans = le;
  while (ri - le > Zero) {
    double mid = (le + ri) / 2;
    if (check(mid)) {
      ans = mid;
      le = mid + Zero;
    } else
      ri = mid - Zero;
  }
  printf("%.9f\n", ans);
}
int main() {
  init();
  slove();
  return 0;
}
