Torres de Queso


Submit solution

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

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

El Granjero Juan quiere guardar algunos bloques de las variedades deliciosas de quesos producidos por sus vacas en su ático para el próximo invierno. Él tiene espacio para una torre de queso en su ático, y la altura de esa torre puede ser a lo más T (1 \leq T \leq 1000). Las vacas le han dado un número virtualmente ilimitado de bloques de cada clase de N (1 \leq N \leq 100) tipos distintos de queso (convenientemente numerados 1...N). A él le gustaría almacenar (sujeto a las restricciones de altura) el conjunto más valioso de bloques que él pueda posiblemente formar: Las vacas venderán el resto para financiar la asociación de terneros huérfanos.

Cada bloque del tipo \(i-ésimo\) de queso tiene algún valor V_i (1 \leq V_i \leq 1000 000) y alguna altura H_i (5 \leq H_i \leq T), la cual es siempre un múltiplo de 5.

El queso se comprime. Un bloque de queso que tiene altura mayor o igual que K (1 \leq K \leq T) se considera "grande" y aplastará cualquiera y todos los bloques de queso (aún los más grandes) ubicados debajo de él en la torre. Un bloque aplastado de queso no pierde ningún valor, pero su altura se reduce exactamente a 4/5 de su antigua altura. Debido a que la altura de un bloque de queso es siempre un múltiplo de 5, la altura de un bloque de queso aplastado será siempre un entero. Un bloque de queso está aplastado o no lo está; tener varios bloques de queso grandes encima de él no lo aplasta más. Solamente bloques grandes de queso aplastan otros bloques; agregar altura a una torre no afecta si un bloque está aplastado o no.

¿Cuál es el valor total de la mejor torre de queso que GJ puede construir?

Considere, por ejemplo, una torre de queso cuya altura máxima puede ser 53 a ser construida de tres tipos de bloques de queso. Los bloques grandes son aquellos que son mayores o iguales a 25. A continuación hay una tabla con los valores y alturas de los diferentes tipos de bloque que él apila:

          Tipo Altura Valor
arriba -> [1]   25    100
          [2]    4     20   <- aplastado por [1] encima
          [3]    8     40   <- aplastado por [1] encima
          [3]    8     40   <- aplastado por [1] encima
abajo  -> [3]    8     40   <- aplastado por [1] encima

El bloque de más arriba es tan grande que los bloques debajo de él son aplastados. La altura total es:

25 + 4 + 8 + 8 + 8 = 53

La altura total no excede 53 y por lo tanto es 'legal'. El valor total es:

100 + 20 + 40 + 40 + 40 = 240

Esta es la mejor torre para este conjunto particular de bloques de queso.

Entrada

• Línea 1: Tres enteros separados por espacios: N, T, y K.

• Líneas 2…N+1: La línea i+1 contiene dos enteros separados por espacios: V_i y H_i.

Salida

• Línea 1: El valor de la mejor torre que GJ puede construir.

Ejemplo de Entrada

3 53 25
100 25
20 5
40 10

Ejemplo de Salida

240

Comments

There are no comments at the moment.