Las inmersiones del buzo
- O(n) · Media
- Plan completo
- Python
- JavaScript
- textos
- ciclos
Enunciado
Bajo el agua no importa la hora, sino la profundidad, y el reloj de Irene la va anotando: un - por cada metro que baja y un + por cada metro que sube. Una inmersión empieza cuando deja la superficie y termina cuando vuelve a ella; lo que suba y baje mientras tanto, sin salir, es parte de la misma inmersión.
Escribe una función que reciba el registro del día, un texto de - y +, y regrese cuántas inmersiones hizo (un entero). El registro siempre empieza y termina en la superficie, y nunca sube por encima de ella. Con "--+-++" baja 2, sube 1, baja 1 y sube 2: sale a la superficie una sola vez, así que es 1 inmersión. Con "-+-+" son 2. Un registro vacío es un día sin bucear: 0.
Ejemplos
El del ejemplo
"--+-++" → 1
Dos inmersiones cortas
"-+-+" → 2
Una sola, bajando y subiendo derecho
"---+++" → 1
Tres de distinto fondo
"-+--++-+" → 3
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def inmersiones(registro):
passJavaScript
function inmersiones(registro) {
}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.