Empieza y termina igual
- O(n²) · Muy difícil
- Plan completo
- Python
- JavaScript
- textos
- ciclos
Enunciado
Un trozo de un texto son letras seguidas, sin saltarse ninguna. De "sol" salen seis trozos: "s", "o", "l", "so", "ol" y "sol".
Escribe una función que reciba un texto y regrese cuántos de sus trozos empiezan y terminan con la misma letra.
Una letra sola cuenta, porque empieza y termina consigo misma. Por eso "abc" da 3 y no 0, y "ab" da 2.
Cuéntalos en "abcda": están las cinco letras sueltas, "a", "b", "c", "d" y "a", y está "abcda" entera, que abre y cierra con "a". Son seis.
Dos trozos que empiezan en lugares distintos son dos trozos, aunque se lean igual: en "aaa" hay seis. Con un texto vacío la respuesta es 0.
Un camino directo: para cada posición de inicio, revisa cada posición de fin de ahí en adelante.
Ejemplos
Ninguna letra se repite
"abc" → 3
El del ejemplo
"abcda" → 6
Dos letras
"ab" → 2
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def cuenta_bordes(texto):
passJavaScript
function cuentaBordes(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.