historia · contexto
Historia
Día 16
La tripulación tenía un protocolo de sueño: nadie autorizado entre las 22:00 y las 06:00 (cabinas, comedor, laboratorio). Solo el oficial de guardia.
El oficial de guardia ese mes era Ari.
Te piden una lista de qué registros de actividad caen en la franja prohibida. Es lo que se llama una patrulla retroactiva. Es lo que Lía llamaba así en sus logs.
objetivo · spec
Tu misión
Tu misión
Implementa horasAnomalas(registros, inicioNocheH, finNocheH) que devuelve los registros cuya hora (entero 0-23) está en la franja nocturna.
La franja es [inicioNocheH, 24) ∪ [0, finNocheH): el día se "corta" a medianoche. Por ejemplo, con inicioNocheH=22, finNocheH=6, cae dentro: 22, 23, 0, 1, 2, 3, 4, 5.
Ejemplo
horasAnomalas(
[{ hora: 23, actividad: 'x' }, { hora: 10, actividad: 'y' }, { hora: 2, actividad: 'z' }],
22,
6
)
// → [{ hora: 23, actividad: 'x' }, { hora: 2, actividad: 'z' }]
Reglas
- Preserva orden de
registros. inicioNocheH >= finNocheHsiempre (la franja cruza medianoche).
validación
Casos de prueba
tests/5.casesmostrando 5 de 5
- [01]franja 22-6, dos dentro
- [02]sin registros
- [03]todo dentro del turno
- [04]límites: 22 dentro, 6 fuera
- [05]Lía compilaba algo a las 3 AM, 4 AM. No era la única vez.