Завантажте застосунок
Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.
Знайдіть максимум кожного повного числового вікна сталої ширини. Перевірте повторні максимуми, від’ємні значення й межі ширини, відхиляючи нескінченні значення та ширину поза довжиною входу.
Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.
Оберіть сумісний endpoint. Доступність інструментів і якість відповідей залежать від налаштованої моделі та сервера.
Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.
Порівняйте фактичну поведінку з очікуваним результатом. Якщо перевірка не проходить, з’ясуйте причину перед наступними змінами.
from collections import deque
from math import isfinite
def window_max(values, width):
if type(width) is not int or not 1 <= width <= len(values):
raise ValueError("width")
if not all(map(isfinite, values)): raise ValueError("finite values")
queue, result = deque(), []
for i, value in enumerate(values):
while queue and queue[0] <= i - width: queue.popleft()
while queue and values[queue[-1]] <= value: queue.pop()
queue.append(i)
if i >= width - 1: result.append(values[queue[0]])
return resultПеревірте перед застосуванням. Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.