#include <bits/stdc++.h>
using namespace std;
const int N = 2e5 + 100;
long long n, m, a[N];
long long d[N];
int main() {
  cin >> n >> m;
  for (int i = (1); i <= (n); i++) scanf("%lld", &a[i]);
  sort(a + 1, a + 1 + n);
  int mid = (n + 1) / 2;
  long long ans = a[mid];
  int cnt = 0;
  long long temp;
  for (int i = (mid); i <= (n - 1); i++) {
    cnt++;
    long long d = a[i + 1] - a[i];
    temp = d * cnt;
    if (m < temp) return printf("%lld", ans + m / (cnt)), 0;
    m -= temp;
    ans = a[i + 1];
  }
  ans += m / (n - mid + 1);
  cout << ans << endl;
  return 0;
}
