Saltar al contenido

Todos los conciertos que puedas

Enunciado

Doce horas de música, cinco escenarios y un solo par de piernas. Quieres ver completos tantos conciertos como puedas: no entras a uno empezado, no te sales antes de que acabe y no puedes estar en dos a la vez. Escribe una función que reciba conciertos, una lista de textos "inicio-fin" con horas enteras de 0 a 24 (el inicio siempre es antes que el fin; la lista puede venir vacía), y regrese un entero: cuántos conciertos puedes ver como máximo. Si uno empieza justo a la hora en que otro termina, alcanzas los dos.

Con ["9-12", "10-11", "11-13", "13-15"] ves 3: "10-11", "11-13" y "13-15". Si entras al primero que empieza, "9-12", solo alcanzas 2. Ojo: el que empieza antes no siempre conviene, y el más corto tampoco.

Ejemplos

  • El del ejemplo

    ["9-12", "10-11", "11-13", "13-15"] → 3

  • Uno justo detrás de otro

    ["8-10", "10-12", "12-14"] → 3

  • El más corto estorba

    ["9-13", "12-14", "13-17"] → 2

  • Un solo concierto

    ["20-23"] → 1

Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.

Empiezas con esto

Python

def cuantos_veo(conciertos):
    pass

JavaScript

function cuantosVeo(conciertos) {
}
Resolver este reto

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)

Ver todos los retos →