La inscripción capicúa
- O(n²) · Muy difícil
- Plan completo
- Python
- JavaScript
- textos
- ciclos
- índices
Enunciado
Los escribas de Ur-Anat grababan sus muros con letras corridas, sin espacios, y enseñaban que la parte sagrada era el trozo que se lee igual de izquierda a derecha que de derecha a izquierda.
Recibes la inscripción, un texto de letras minúsculas sin espacios (puede venir vacío). Regresa, como texto, el trozo seguido más largo que se lee igual al revés. Un trozo son letras seguidas, sin saltarse ninguna. Puede tener largo par, como "abba", o impar, como "aba", y una letra sola ya se lee igual al revés. Si dos trozos empatan en largo, regresa el que empieza antes. Con un texto vacío, regresa "".
En "tabacdc" se leen igual al revés "aba" y "cdc", los dos de largo 3, y ninguno más largo. Empatan, y "aba" empieza antes: regresas "aba".
Ejemplos
El ejemplo
"tabacdc" → "aba"
De largo par
"xabbay" → "abba"
La palabra entera
"reconocer" → "reconocer"
Ninguno pasa de una letra
"abc" → "a"
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def trozo_capicua(texto):
passJavaScript
function trozoCapicua(texto) {
}Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.