Pablito Minimiza Clavitos


Enviar solución

Puntos: 100
Límite de tiempo: 1.0s
Límite de memoria: 256M

Tipo de problema
Lenguajes permitidos
C, C++, Java, Python

Todos en Rosario saben cuál es el pasatiempo favorito de Pablito: clavar clavitos. Pero a Pablito no le gusta hacerlo sin criterio alguno. El es un perfeccionista y, como tal, siempre busca usar la mínima cantidad de clavos posible para completar su labor. Para el desafío de hoy, Pablito decidió arrojar \(N\) tablas de madera de forma aleatoria sobre una misma línea recta con la condición de no poder moverlas en lo absoluto luego de tirarlas.

Luego de eso se dispone a unirlas usando sus nuevos Clavos Extra Largos™, los cuales le permiten atravesar y clavar simultáneamente cualquier número de maderas que se superpongan en un mismo punto.

Viendo las tablas desde arriba, cada una puede representarse geométricamente como un intervalo de la forma \(\texttt{[L,R]}\). Tu tarea es determinar e imprimir la mínima cantidad de clavos (o puntos) que habría que poner de tal forma que todos los intervalos contengan al menos un clavo.

Entrada

La primera línea contiene un único entero \(N\) (\(1 \leq N \leq 2 \cdot 10^5\)) que representa la cantidad de tablas de madera. Las siguientes \(N\) líneas contienen dos enteros \(L_i\) y \(R_i\) (\(0 \leq L_i \leq R_i \leq 10^9\)) cada una, que indican los extremos izquierdo y derecho (inicio y fin) de la \(i\)-ésima tabla.

Salida

Imprima una sola línea con un único entero \(K\), que indica la mínima cantidad de clavos necesarios para asegurar todas las tablas de madera.

Ejemplo

Entrada 1

2
2 3
3 4

Salida 1

1

Entrada 2

5
1 2
3 4
5 6
7 8
9 10

Salida 2

5

Comentarios

No hay comentarios por el momento.