¿Otro problema de segment tree?


Submit solution

Points: 100 (partial)
Time limit: 10.0s
Memory limit: 64M

Authors:
Problem type
Allowed languages
Ada, BrainF***, C#, C++, Dart, Go, Java, JS, Kotlin, Lua, Pascal, Prolog, Python, Swift, VB

Todo el mundo sabe que hay días durante el Campamento de Verano del ICPC donde entrenadores y concursantes explican algunos algoritmos con el objetivo de preparar al grupo de participantes para resolver problemas en la Final Caribeña del ICPC.

Hubo un tiempo en el cual dominar la estructura de datos segment tree era una tarea muy difícil. Eran necesarios varios días para explicar el segment tree, aunque al final todos entendían como trabajaba.

En ese tiempo había solo una dificultad. Eran muchos días de entrenamiento y los concursantes sentían la necesidad de aplicar el segment tree en todos los problemas. Sin embargo, hay problemas donde utilizar el segment tree produce una solución incorrecta y hay otros en los cuales el uso del segment tree representa una solución demasiado compleja para el problema.

El siguiente problema implica el trabajo con rangos y la pregunta fundamental para usted es la siguiente: Es necesario un segment tree para resolver este problema? En este problema hay varios rangos que representan la hora de inicio y de fin (incluyendo ambos tiempos como tiempo trabajado) en que una persona trabaja en un área. Usted debe calcular el máximo número de personas que se encuentran trabajando al mismo tiempo.

Entrada

En la primera línea habrá un entero N (1 \leq N \leq 10^6) que representa el número de personas. Las siguientes N líneas contienen un rango [a,b] (1 \leq a \leq b \leq 10^6) con los tiempos de inicio y fin correspondientes a la persona i.

Salida

Usted debe imprimir un entero con la respuesta del problema.

Ejemplo de entrada

5
1 5
2 4
3 5
1 2
4 4

Ejemplo de salida

4

Comments


  • 9
    linkyless  commented on Feb. 14, 2024, 12:50 p.m.

    Hacer este problema por Segment Tree es tan irónico...