G. Оборона крепости
ограничение по времени на тест
1.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Сегодня вам предстоит руководить эльфами-лучниками при обороне крепости от нападения толпы злых орков. С трёх сторон крепость защищена непроходимыми горами, а с оставшейся стороны расположена стена, состоящая из n секций. На текущий момент на i-й секции находится ai лучников. Известно, что каждый лучник, находящийся на секции i может поражать орков, атакующих секции на расстоянии не более r от данной, то есть секции с номерами j, такие что |i - j| ≤ r. В частности, если r = 0, то лучник может стрелять только в орков, атакующих секцию i.

Защищённостью секции i назовём суммарное количество лучников, которые могут стрелять в орков, атакующих данную секцию. Надёжностью плана обороны называется минимальная величина защищённости какой-либо из секций стены.

До атаки осталось совсем мало времени, и вы не успеваете перерасставить стрелков, уже расположенных на стене. Тем не менее, у вас имеется резерв из k лучников, которых можно распределить по секциям прозвольным образом. Вас интересует, какое максимальное значение надёжности плана обороны можно получить.

Входные данные

В первой строке входных данных записаны три целых числа n, r и k (1 ≤ n ≤ 500 000, 0 ≤ r ≤ n, 0 ≤ k ≤ 1018) — количество секций, из которых состоит стена, максимальное расстояние до других секций, на которое может стрелять каждый лучник и количество лучников в резерве соответственно. Во второй строке записаны n целых чисел a1, a2, ..., an (0 ≤ ai ≤ 109) — текущее количество лучников на каждой из секций.

Выходные данные

Выведите одно целое число — максимально возможное значение надёжности плана обороны, то есть максимально возможное минимальное значение защищённости секции стены при оптимальной расстановке имеющихся в резерве k лучников.

Примеры
Входные данные
5 0 6
5 4 3 4 9
Выходные данные
5
Входные данные
4 2 0
1 2 3 4
Выходные данные
6
Входные данные
5 1 1
2 1 2 1 2
Выходные данные
3