## Условие Дан массив `nums` и целое число `k`. Есть окно из `k` подряд идущих элементов, скользящее слева направо на 1 шаг за раз. Верни массив максимумов в каждом окне. **Формат входа:** - `nums` — массив, $1 \leq len(nums) \leq 10^5$, $-10^4 \leq nums[i] \leq 10^4$. - `k` — целое, $1 \leq k \leq len(nums)$. **Формат выхода:** - Массив длины $len(nums) - k + 1$. **Пример 1:** ``` Вход: nums = [1, 3, -1, -3, 5, 3, 6, 7], k = 3 Выход: [3, 3, 5, 5, 6, 7] ``` Объяснение по окнам: ``` [1 3 -1] -3 5 3 6 7 → 3 1 [3 -1 -3] 5 3 6 7 → 3 1 3 [-1 -3 5] 3 6 7 → 5 1 3 -1 [-3 5 3] 6 7 → 5 1 3 -1 -3 [5 3 6] 7 → 6 1 3 -1 -3 5 [3 6 7] → 7 ``` **Ограничения:** - Целевой Time: $O(n)$, Space: $O(k)$. - Наивный `max(nums[i:i+k])` каждое окно → $O(nk)$ → TLE.

Алгоритмы hard senior

Вопрос с собеседования аналитика по теме «Алгоритмы».

algorithmsmonotonic-dequesliding-window

Разбор ответа

Подробный разбор с объяснением «почему правильный ответ верный» и почему остальные неверны — после регистрации.

3000+ вопросов с разбором, карточки с раскрытием ответа, AI-собес и подготовка к интервью аналитика.

Получить доступ к ответам — все вопросы →

Что дальше

Похожие вопросы из категории «Алгоритмы»