Editorial for Nueva Tarifa
Submitting an official solution before solving the problem yourself is a bannable offence.
Author:
Subtarea 1:
Como máximaPrioridad para todas las transacciones, el costo de una transacción siempre será máximaTarifa, por lo cuál simplemente hay que mantener la mayor máximaTarifa vista hasta el momento
Subtarea 2:
Como máximaPrioridad para todas las transacciones, el costo de una transacción siempre será máximaTarifa, por lo cual es posible mantener un multiset con las máximaTarifa de las transacciones actuales, y en cada query responder con la mayor máximaTarifa.
Subtarea 3:
Se pueden mantener las transacciones en un vector, y en cada query recorrer el vector y probar cuál es la máxima transacción para la tarifaBase dada.
Subtarea 4:
Si se define como la respuesta para , el problema trata de hallar el minímo de funciones que son formadas por dos rectas, una con pendiente , y luego una con pendiente a partir de un punto .
Por tanto se puede mantener una estructura de datos por rangos que permita mantener la mejor línea con pendiente y la mejor línea con pendiente en cada punto .
Subtarea 5:
Como la subtarea anterior pero usando sweep line sobre el tiempo de las queries.
Comments