← К задачамОткрыть курс →
Длина наибольшей возрастающей подпоследовательности
Дан список целых чисел arr.
Реализуйте функцию lis_length(arr), которая возвращает длину наибольшей строго возрастающей подпоследовательности (элементы не обязаны идти подряд, но порядок сохраняется). Эффективное решение работает за O(n log n) с помощью бинарного поиска (bisect).
Формат входа: arr — список целых чисел (возможно пустой).
Формат выхода: целое число — длина LIS.
Примеры:
lis_length([10, 9, 2, 5, 3, 7, 101, 18]) -> 4 # например 2, 5, 7, 101
lis_length([5, 4, 3, 2, 1]) -> 1
lis_length([]) -> 0
📖 Теория по теме:ДП на подпоследовательностях: LIS и LCS
Курс по теме
Пройдите курс «Python с нуля» — по шагам, с проверкой
8 уроков · ~14 ч · теория, упражнения и экзамен с бейджем
def lis_length(arr):
# ваш код
pass
Здесь появится результат. Напиши решение слева и нажми «Проверить код».
Для запуска тестов необходима авторизация.