Menu
CoddyTech

Longest Common Subsequence

Даны две строки, text1 и text2. Подпоследовательность строки сохраняет некоторые её буквы в исходном порядке, а остальные пропускает; сохранённые буквы не обязательно должны стоять рядом. Верните длину самой длинной строки, которая является подпоследовательностью обеих строк, или 0, если в этих двух строках нет общих букв.

Функция

longestCommonSubsequence(text1: string, text2: string) → integer
text1string
первая строка
text2string
вторая строка
Возвращаетinteger
длина наибольшей общей подпоследовательности

Ограничения

  • 1 ≤ text1.length ≤ 1000
  • 1 ≤ text2.length ≤ 1000
  • Обе строки содержат только строчные буквы английского алфавита.

Примеры

Ввод
text1 = "stone"text2 = "longest"
Вывод
3
Пояснение
o, n, e появляются в этом порядке в обоих словах, поэтому one — общая последовательность длиной 3. Буквы s и t стоят в конце слова longest, но в начале слова stone, поэтому их использование даст не более st.
challenge icon

Дополнительный вопрос

Можешь вернуть одну самую длинную общую подпоследовательность вместе с её длиной?

Сбросить код
def longestCommonSubsequence(text1, text2):
    # Напишите код здесь

Тест #1

Тест #2

Тест #3

Аргументы

text1 = "stone"
text2 = "longest"

Ожидаемый вывод

3