Menu
CoddyTech

Longest Common Subsequence

Se te dan dos cadenas, text1 y text2. Una subsecuencia de una cadena conserva algunas de sus letras en su orden original y descarta las demás; las letras conservadas no tienen que estar juntas. Devuelve la longitud de la cadena más larga que sea una subsecuencia de ambas, o 0 si las dos cadenas no tienen ninguna letra en común.

Función

longestCommonSubsequence(text1: string, text2: string) → integer
text1string
la primera cadena
text2string
la segunda cadena
Devuelveinteger
la longitud de la subsecuencia común más larga

Restricciones

  • 1 ≤ text1.length ≤ 1000
  • 1 ≤ text2.length ≤ 1000
  • Ambas cadenas contienen solo letras minúsculas del inglés.

Ejemplos

Entrada
text1 = "stone"text2 = "longest"
Salida
3
Explicación
o, n, e aparecen en este orden en ambas palabras, así que one es una subsecuencia común de longitud 3. En longest, las letras s y t aparecen al final, mientras que en stone aparecen al principio, así que una subsecuencia común que las use solo puede ser st, que es más corta.

lock icon+19 pruebas ocultas al enviar

challenge icon

Para ir más allá

¿Puedes devolver una subsecuencia común más larga, no solo su longitud?

Restablecer código
def longestCommonSubsequence(text1, text2):
    # Escribe el código aquí
Casos de prueba

Caso 1

Caso 2

Caso 3

Entrada

text1 = "stone"
text2 = "longest"

Esperado

3