#include <bits/stdc++.h>
using namespace std;
long long n, k;
const int maxn = 200005;
long long a[maxn];
int main() {
  scanf("%I64d%I64d", &n, &k);
  for (long long i = 0; i < n; i++) {
    scanf("%d", &a[i]);
  }
  sort(a, a + n);
  long long mid = n / 2;
  long long now_pos = mid + 1, tmp = mid + 2;
  while (k > 0 && now_pos < n) {
    long long delta = a[now_pos] - a[mid];
    long long l = now_pos - mid;
    long long tot = delta * l;
    if (tot > k) {
      int p = k / l;
      k = 0;
      a[mid] += p;
    } else {
      k -= tot;
      a[mid] = a[now_pos];
    }
    now_pos++;
    while (a[now_pos] == a[now_pos - 1] && now_pos < n) {
      now_pos++;
    }
  }
  if (now_pos == n) {
    a[mid] += k / (n - mid);
  }
  cout << a[mid];
  return 0;
}
