Максимум на скользящем окне
Просмотр в формате PDFСистема мониторинга записывает нагрузку на сервер по минутам. За каждый момент времени нужно определить пиковую нагрузку за последние k подряд идущих минут.
Даны n значений нагрузки и число k — размер окна наблюдения. Для каждого отрезка из k подряд идущих минут выведите максимальное значение нагрузки на этом отрезке. Окно последовательно сдвигается слева направо, поэтому всего нужно вывести n - k + 1 значений.
Входные данные
В первой строке заданы числа n и k (1 <= k <= n <= 2*10^5).
Во второй строке заданы n целых чисел a_i (-10^9 <= a_i <= 10^9) — значения нагрузки по минутам.
Выходные данные
Выведите n - k + 1 чисел через пробел — пиковые нагрузки для всех окон длины k в порядке слева направо.
Ограничения
1 <= k <= n <= 2*10^5
-10^9 <= a_i <= 10^9
Примеры
Пример 1
Входные данные
1 1
0
Выходные данные
0
Пример 2
Входные данные
7 3
3 1 3 2 5 5 4
Выходные данные
3 3 5 5 5
Комментарии