# Мониторы
# Сначала читаем N и K
N, K = map(int, input().split())
# Затем читаем массив громкостей мониторов
monitors = list(map(int, input().split()))
half = N // 2
def can_achieve(target):
needed = 0
for i in range(half):
needed += max(0, target - monitors[i])
return needed <= K
left = monitors[0]
right = monitors[0] + K + 1
while left < right:
mid = (left + right + 1) // 2
if can_achieve(mid):
left = mid
else:
right = mid - 1
print(left)