¡Aguanta la respiración!
Se te dará una lista de números que representan la altitud de tu personaje sobre el nivel del mar en intervalos regulares:
- Los números positivos representan la altura sobre el agua.
- 0 es el nivel del mar.
- Los números negativos representan la profundidad bajo la superficie del agua.
Crea una función que devuelva si tu personaje sobrevive a su experiencia de buceo sin supervisión, dada una lista de enteros.
Tu personaje comienza con un medidor de respiración de 10, que es el máximo. Al bucear bajo el agua, el medidor de respiración disminuye en 2 por cada elemento de la lista. ¡Cuidado! Si la respiración de tu personaje disminuye hasta 0, ¡muere!
Para evitarlo, puedes recuperar la respiración en 4 (hasta el máximo de 10) por cada elemento de la lista en el que estés al nivel del mar o por encima.
Tu función debe devolver
Truesi tu personaje sobrevive yFalsesi no.
Ejemplo resuelto
diving_minigame([-5, -15, -4, 0, 5]) ➞ True
# El medidor de respiración comienza en 10.
# -5 está bajo el agua, así que el medidor de respiración disminuye a 8.
# -15 está bajo el agua, así que el medidor de respiración disminuye a 6.
# -4 está bajo el agua, así que el medidor de respiración disminuye a 4.
# 0 está al nivel del mar, así que el medidor de respiración aumenta a 8.
# 5 está por encima del nivel del mar y el medidor de respiración queda limitado a 10 (de otro modo habría sido 12).
# ¡El personaje sobrevive!Ejemplos
diving_minigame([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) ➞ True
diving_minigame([-3, -6, -2, -6, -2]) ➞ False
diving_minigame([2, 1, 2, 1, -3, -4, -5, -3, -4]) ➞ FalseNotas
- Las listas pueden tener cualquier longitud.
- Todas las listas son válidas.