Завантажте застосунок
Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.
Виберіть найбільшу неперекривну підмножину до 64 напіввідкритих інтервалів із цілими межами в ±10^9. Перевірте дотик і однакові закінчення, відхиліть нульову довжину й поверніть початкові індекси без зміни вводу.
Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.
Оберіть сумісний endpoint. Доступність інструментів і якість відповідей залежать від налаштованої моделі та сервера.
Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.
Порівняйте фактичну поведінку з очікуваним результатом. Якщо перевірка не проходить, з’ясуйте причину перед наступними змінами.
def interval_selection(intervals):
if type(intervals) is not list or len(intervals) > 64:
raise ValueError("schedule.input")
ordered = []
for index, pair in enumerate(intervals):
if type(pair) not in (list, tuple) or len(pair) != 2 or any(type(x) is not int or abs(x) > 10**9 for x in pair):
raise ValueError("schedule.pair")
start, end = pair
if start >= end:
raise ValueError("schedule.interval")
ordered.append((end, start, index))
selected, last = [], None
for end, start, index in sorted(ordered):
if last is None or start >= last:
selected.append(index)
last = end
return selected
Перевірте перед застосуванням. Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.