Teleporters


Submit solution

Points: 100 (partial)
Time limit: 2.0s
Memory limit: 256M

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

Tú estás participando en una competencia que consiste en cruzar a Egipto de oeste a este a lo largo de un segmento de línea recto. Inicialmente estás localizado en el punto de más al oeste del segmento. Es una regla de la competencia que usted tiene que moverse a lo largo del segmento y siempre hacia el este.

Hay N teletransportes en el segmento. Un teletransporte tiene dos extremos. En cualquier momento que tú alcanzas a uno de los extremos, inmediatamente el teletransporte te traslada para el otro extremo (tenga en cuenta que, dependiendo de cual extremo del teletransporte tú alcanzas la teletranportación puede trasladarte hacia el este o hacia el oeste de tu posición actual). Después de ser teletransportado debes continuar moviéndote hacia el este a lo largo del segmento; nunca puedes evitar un extremo de un teletransportador que esté en tu camino. Nunca habrá dos extremos de un teletransportador en la misma posición. Los extremos estarán estrictamente entre el inicio y el final del segmento.

Cada vez que usted llega a un teletransportador, usted gana 1 punto. El objetivo de la competencia es ganar tantos puntos como sea posible. A fin de maximizar los puntos que ganas, tienes permitido agregar M nuevos teletransportadores al segmento antes de iniciar tu viaje. También ganas puntos usando el nuevo teletransportador.

Puedes poner los extremos de los nuevos teletransportadores donde desees (aun en coodenadas no enteras) tal de que ellos no ocupen una posición ya ocupada por otro extremo. Es decir, las posiciones de los extremos de todos los teletranspotadores tiene que ser única. También, los extremos de los nuevos teletransportadores tienen que estar situados extrictamente entre el inicio y el final del segmento.

Tenga en cuenta que se garantiza que, sin importar cómo se agregan los teletransportes, tu siempre puedes alcanzar el final de segmento.

TAREA

Escribe un programa que, dada la posición de los extremos de los N teletransportes, y el número M de nuevos teletransportes que puedes agregar, calcule el número máximo de puntos que puedes ganar.

RESTRICCIONES

1 \leq N \leq 1,000,000 El número de teletransportes inicialmente en el segmento. 1 \leq M \leq 1,000,000 El máximo número de nuevos teletransportes que puedes agregar. 1 \leq WX < EX \leq 2,000,000 Las distancias desde el inicio del segmento hasta los extremos oeste y este del teletransporte X.

ENTRADA

Tu programa debe leer de la entrada estándar los siguientes datos:

• Línea 1 contiene al entero N, el número de teletransportes inicialmente en el segmento.

• Línea 2 contiene al entero M, el número máximo de nuevos teletransportes que puedes agregar.

• Cada una de las próximas N líneas describen a un teletransporte. La i-ésima de estas líneas describe al i-ésimo teletransporte. Cada línea consiste de 2 enteros W_i y E_i separados por un espacio. Ellos representan respectivamente las distancias desde el comienzo del segmento hasta los extremos este y oeste del teletransporte.

Ningún par de extremos de los teletransportes dados comparten la misma posición del segmento por el cual viajarás inicia en la posición 0 y finaliza en la posición 2,000,001.

SALIDA

Tu programa tiene que escribir para la salida estándar una simple línea conteniendo un entero, el número máximo de puntos que puedes ganar.

EJEMPLO

Ejemplo entrada 1

3                               
1
10 11
1 4
2 3

Ejemplo salida 1

6

La primera figura muestra un segmento con los tres teletransportes originales. La segunda figura muestra el mismo segmento después de agregar un nuevo teletransportador con extremos en 0.5 y en 1.5.

Después de agregar el Nuevo teletransportador como se muestra en la figura, Usted viajará como sigue:

• Inicias en la posición 0, moviéndote hacia el este.

• Llegas al extremo de la posición 0.5 y consigues teletransportarte a la posicián 1.5 (ganas 1 punto)

• Continúas moviéndote hacia el este y llegas al extreme en la posición 2; consigues teletransportarte a la posición 3 (tienes 2 puntos)

• Llegas al extremos de la posición 4, y te teletransportas a 1 (tienes 3 puntos).

• Llegas al extremos de la posición 1.5, y te teletransportas a 0.5 (tienes 4 puntos).

• Llegas al extremos de la posición 1, y te teletransportas a 4 (tienes 5 puntos).

• Llegas al extremos de la posición 10, y te teletransportas a 11 (tienes 6 puntos).

• Continúas hasta llegar al final del segmento finalizando con una puntuación total de 6 puntos.

Ejemplo entrada 2

3                             
3
5 7
6 10
1999999 2000000

Ejemplo salida 2

12

Comments

There are no comments at the moment.