#include <bits/stdc++.h>
using namespace std;
int n, k;
vector<double> arr;
bool check(double energy_level) {
  double remaining = 0;
  double lack = 0;
  bool res = false;
  for (int i = 0; i < n; i++) {
    double diff = arr[i] - energy_level;
    if (diff >= 0)
      remaining += diff;
    else
      lack += abs(diff);
  }
  if (remaining * ((100 - k) / 100.0) >= lack) res = true;
  return res;
}
int main() {
  cin >> n >> k;
  arr = vector<double>(n, k);
  for (int i = 0; i < n; i++) cin >> arr[i];
  double high = 1000;
  double low = 0;
  double mid = 0;
  double res = 0;
  for (int i = 0; i < 100; i++) {
    mid = low + (high - low) / 2;
    if (check(mid)) {
      res = max(res, mid);
      low = mid;
    } else {
      high = mid;
    }
  }
  cout << setprecision(11) << res << endl;
}
