Menu
CoddyTech

Longest Palindromic Substring

Recibes una cadena s de letras minúsculas del alfabeto inglés. Devuelve su subcadena palindrómica más larga: la secuencia más larga de letras consecutivas que se lee igual de izquierda a derecha que de derecha a izquierda. Si varias subcadenas tienen esa misma longitud máxima, devuelve la que empieza más a la izquierda.

Función

longestPalindrome(s: string) → string
sstring
la cadena en minúsculas que se va a buscar
Devuelvestring
la subcadena palindrómica más larga de s; la que aparece más a la izquierda si hay varias de igual longitud

Restricciones

  • 1 ≤ s.length ≤ 2000
  • s contiene solo letras minúsculas del inglés.
  • Cuando varios palíndromos tienen la mayor longitud, la respuesta es el que tiene el índice inicial más pequeño.

Ejemplos

Entrada
s = "bananas"
Salida
"anana"
Explicación
"anana" se lee igual desde ambos extremos y tiene 5 letras. Ninguna secuencia más larga funciona: "banana" empieza con b y termina con a, "ananas" empieza con a y termina con s, y la palabra completa empieza con b y termina con s.

lock icon+18 pruebas ocultas al enviar

challenge icon

Para ir más allá

¿Puedes encontrar la respuesta en tiempo O(n)?

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

Caso 1

Caso 2

Caso 3

Entrada

s = "bananas"

Esperado

"anana"