909 B
909 B
Задача 05 — длиннейшая возрастающая подпоследовательность (C++)
int lis_length(const std::vector<int>& a); // длина НВП (строго возрастающей)
Требования:
- пустая последовательность → 0;
- работа за O(n log n); наивное O(n²) не пройдёт проверку на 100 000 элементах (внутренний тест меряет время и роняет прогон при > 2 с);
- подпоследовательность не обязана быть непрерывной.
Проверка: python3 grade.py 05. Критерий: все ok, сборка без предупреждений.
Разбор после сдачи: «хвосты» — массив минимальных последних элементов + lower_bound.