Menu
CoddyTech

Is Subsequence

FácilDos punterospython iconjava iconcpp iconc iconjs icon+10

Recibes dos cadenas, s y t. Devuelve true si puedes convertir t en s eliminando algunas de sus letras (posiblemente ninguna) mientras las letras restantes mantienen su orden, y false en caso contrario. Por ejemplo, ace es una subsecuencia de abcde, pero aec no lo es.

Función

isSubsequence(s: string, t: string) → boolean
sstring
la cadena que se debe buscar
tstring
la cadena de la que se eliminarán letras
Devuelveboolean
verdadero si s se puede leer dentro de t en orden, posiblemente con espacios

Restricciones

  • 1 ≤ s.length ≤ 3 × 104
  • 1 ≤ t.length ≤ 5 × 104
  • s y t solo contienen letras minúsculas del inglés.

Ejemplos

Entrada
s = "ace"t = "abcde"
Salida
true
Explicación
Elimina b y d de abcde y queda ace, en el mismo orden.

lock icon+20 pruebas ocultas al enviar

challenge icon

Para ir más allá

Supón que t permanece igual y tienes que comprobar un millón de cadenas diferentes s comparándolas con él. ¿Cómo prepararías t para que cada comprobación sea más rápida que volver a leer todo t?

Restablecer código
def isSubsequence(s, t):
    # Escribe el código aquí
Casos de prueba

Caso 1

Caso 2

Caso 3

Entrada

s = "ace"
t = "abcde"

Esperado

true