Ir al contenido (saltar navegación)

Relojes binarios

Tiempo máximo: 2,000-5,000 sMemoria máxima: 4096 KiB
Reloj de agujas en museo D'Orsay (París)

Cuando la humanidad construyó el primer robot humanoide, todos lo vieron como un avance tecnológico apasionante. Poco a poco, aquellas máquinas torpes que apenas eran capaces de sujetar un vaso dejaron paso a robots más avanzados que comenzaron a salir de los laboratorios y empezaron a pasear por nuestras aceras.

Tras las revueltas que miles de ellos originaron en muchas ciudades, se tuvo que adaptar la legislación y tuvimos que acostumbrarnos a verlos como entes con derechos y libertades similares a nosotros. La presión que ejercieron contra la discriminación que, decían, sufrían nos llevó a tener, por ejemplo, un tercer tipo de aseo en lugares públicos como bares y restaurantes.

Pero de todas las concesiones que hicimos durante aquellas revueltas, la que me parece más ridícula es la de tener que poner relojes binarios en plazas o centros comerciales al lado de los relojes para humanos. Después de todo, llevan siempre un reloj interno que les permite conocer la hora con exactitud. Además, su insistencia con ese tema de los relojes urbanos sacó a relucir la poca empatía que nos tienen. En lugar de aceptar relojes que pusieran en binario por un lado las horas y por otro los minutos para que los humanos pudiéramos entenderlos, insistieron en poner luces para representar en binario el número de segundos transcurridos desde el 1 de enero de 1970. Una luz encendida representa un dígito binario a uno y, naturalmente, una luz apagada representa un cero.

Ahora que, aunque se salieron con la suya, la jugada no les salió muy bien. Cuando sus relojes están bajos de batería, éstas solo tienen fuerza para encender un número limitado de luces, lo que hace que la hora se vea mal. Pero como la persona que los mantiene no entiende lo que pone, puede pasar mucho tiempo hasta que lo arregla. Y durante todo ese tiempo, muy pocas veces el reloj habrá dado la hora correcta.

Entrada

El programa deberá leer, de la entrada estándar, múltiples casos de prueba, cada uno en una línea.

Cada caso de prueba está compuesto por tres números con la información del mal funcionamiento de uno de los relojes binarios. El primer número 0 ≤ n ≤ 4 indica cuántas luces es capaz de encender, como mucho, la maltrecha batería.

Los dos siguientes números representan el intervalo de tiempo en el que la batería ha estado funcionando mal. El intervalo se da con el segundo en el que comienza y termina ese mal funcionamiento, medidos desde el 1 de enero de 1970. Se garantiza que el primer número será siempre menor que el segundo y ninguno de ellos será superior a 1018 (el 19 de enero de 2038 es solo un recuerdo lejano).

La entrada termina con tres ceros que no deben procesarse.

Salida

Por cada caso de prueba se indicará el número de segundos en los que el reloj binario ha mostrado la hora correctamente.

Entrada de ejemplo

1 2 16
2 2 16
3 3 7
0 0 0

Salida de ejemplo

4
10
5