Menu
CoddyTech

Longest Common Subsequence

Você recebe duas strings, text1 e text2. Uma subsequência de uma string mantém algumas de suas letras na ordem original e descarta as demais; as letras mantidas não precisam estar lado a lado. Retorne o comprimento da maior string que é subsequência de ambas ou 0 se as duas strings não tiverem nenhuma letra em comum.

Função

longestCommonSubsequence(text1: string, text2: string) → integer
text1string
a primeira string
text2string
a segunda string
Retornainteger
o comprimento da maior subsequência comum

Restrições

  • 1 ≤ text1.length ≤ 1000
  • 1 ≤ text2.length ≤ 1000
  • Ambas as strings contêm apenas letras minúsculas do alfabeto inglês.

Exemplos

Entrada
text1 = "stone"text2 = "longest"
Saída
3
Explicação
o, n, e aparecem nessa ordem em ambas as palavras, então one é uma subsequência comum de comprimento 3. Em longest, as letras s e t vêm por último, enquanto em stone elas vêm primeiro, então uma subsequência comum que as usa só pode ser st, que é mais curta.

lock icon+19 testes ocultos ao enviar

challenge icon

Para ir além

Você pode retornar uma das maiores subsequências comuns, e não apenas seu comprimento?

Redefinir código
def longestCommonSubsequence(text1, text2):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Caso 3

Entrada

text1 = "stone"
text2 = "longest"

Esperado

3