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