Los andenes de la estación
- O(n log n) · Difícil
- Plan completo
- Python
- JavaScript
- listas
- ordenar
- ciclos
Enunciado
En la estación de Valle Alto ningún tren espera: al llegar, ya tiene un andén libre. Con el horario del día, el jefe abre los andenes justos. Escribe una función que reciba llegadas y salidas, dos listas de enteros del mismo largo (minutos del día, de 0 a 1439; pueden venir vacías). El tren i llega en llegadas[i] y sale en salidas[i], y siempre sale al menos un minuto después de llegar. Regresa un entero: el mayor número de trenes que hay en la estación al mismo tiempo.
Un tren ocupa su andén desde que llega hasta que sale, y el minuto en que sale el andén ya queda libre: si otro llega ese mismo minuto, lo usa.
Con llegadas [10, 15, 40, 45] y salidas [30, 50, 60, 55], en el minuto 45 están los tres últimos (el primero salió en el 30): la respuesta es 3. Sin trenes, la respuesta es 0.
Ejemplos
El del ejemplo
[10, 15, 40, 45], [30, 50, 60, 55] → 3
Nunca se cruzan
[0, 20, 40], [10, 30, 50] → 1
Uno sale el minuto en que otro llega
[60, 120], [120, 180] → 1
El horario viene desordenado
[300, 100, 200], [400, 350, 250] → 2
Ningún tren
[], [] → 0
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def andenes(llegadas, salidas):
passJavaScript
function andenes(llegadas, salidas) {
}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.
Más retos de O(n log n)
- Los botes de rescatelistas · ordenar · comparaciones
- Los costales antes de la lluvialistas · búsqueda · división
- Los hechizos que volteanordenar · listas · condicionales
- Los números de las camisetaslistas · ordenar · ciclos
- Los primos hasta nlistas · ciclos · operaciones
- Los tres cristaleslistas · ordenar · operaciones