Editorial for Inversiones en Rango
Submitting an official solution before solving the problem yourself is a bannable offence.
Author:
Subtarea 1
y
Solo hay que saber si .
Subtarea 2
Tenemos que para cada par con y . Por tanto, la respuesta es .
Subtarea 3
En esta subtarea, podemos probar todos los pares con y . Cada uno de esos rangos tiene longitud , por lo que esta solución tiene complejidad temporal .
Para las próximas subtareas, primeramente computaremos todos los pares con y . Llamemos a esos pares como puntos relevantes.
Subtarea 4
Digamos es la cantidad de puntos relevantes con .
Entonces, la respuesta a una pregunta es
Podemos computar en tiempo :
.
De esa manera, se puede responder cada pregunta en tiempo , quedando en .
Subtarea 5
Similar a la subtarea 6, pero aceptando soluciones subóptimas, como un debido al uso de alguna estructura de datos logarítmica.
Subtarea 6
Podemos extender la idea de computar la cantidad de puntos con para ambas coordenadas. Digamos que es la cantidad de puntos relevantes con .
Hay varias formas de computar en tiempo .
Una forma, es usando de la subtarea anterior. Podemos decir que . Y, naturalmente, podemos computar a partir de valores ya computados: .
Otra forma muy conocida, es: .
Entonces, la respuesta a una pregunta es
Así, podemos responder cada pregunta en tiempo constante, obteniendo complejidad final .
Comments