Некоторые методы решения задачи о наибольшей возрастающей подпоследовательности:
Алгоритм, работающий за O(n log n). ru.ruwiki.ru ru.wikipedia.org Для строки x хранятся массивы M и P длины n. ru.ruwiki.ru M[i] содержит индекс наименьшего по величине из последних элементов возрастающих подпоследовательностей длины i, а P[i] — индекс предшествующего символа для наидлиннейшей возрастающей подпоследовательности, оканчивающейся в i-й позиции. ru.wikipedia.org На каждом шаге происходит переход к следующему элементу строки, для каждого перехода требуется не более логарифма времени (бинарный поиск по массиву M). ru.wikipedia.org
Использование деревьев ван Эмде Боаса. ru.ruwiki.ru В частном случае, если строка является перестановкой 1..n, задача имеет решение за n log log n с использованием деревьев ван Эмде Боаса. ru.ruwiki.ru
Сведение задачи к поиску длиннейшего пути в ориентированном ациклическом графе. ru.ruwiki.ru Ребра задаются между возрастающими элементами. ru.ruwiki.ru Подсчёт длиннейшего пути занимает линейное время от числа рёбер, но в худшем случае оно может быть квадратично от длины строки. ru.ruwiki.ru
Использование табло Юнга. neerc.ifmo.ru Решение позволяет найти длину наибольшей возрастающей подпоследовательности, но без возможности её восстановления. neerc.ifmo.ru Длина первой строки табло и будет искомой величиной. neerc.ifmo.ru
Примеры полезных ответов Поиска с Алисой на вопросы из разных сфер. Вопросы сгенерированы нейросетью YandexGPT для актуальных тем, которые определяются на базе обобщённых запросов к Поиску с Алисой.