La bodega del galeón
- O(n log n) · Difícil
- Plan completo
- Python
- JavaScript
- textos
- ordenar
- ciclos
Enunciado
Lo que no cabe en la bodega se queda en la isla. El botín está apilado en la playa en lotes, y en cada lote todas las cajas valen lo mismo. Todas las cajas ocupan el mismo lugar, y la capitana quiere zarpar con lo más valioso.
Escribe una función que reciba lotes, una lista de textos con la forma "cantidadxvalor" ("4x7" son 4 cajas de 7 monedas cada una; los dos números son enteros de 1 en adelante; la lista puede venir vacía), y espacio, un entero de 0 en adelante: cuántas cajas caben. Regresa un entero: el valor más alto que puedes cargar. De un lote puedes subir solo algunas cajas. Si caben todas, las subes todas.
Con ["4x7", "2x10", "5x3"] y espacio 5: subes las 2 cajas de 10 y 3 de las de 7, y cargas 20 + 21 = 41.
Ejemplos
El del ejemplo
["4x7", "2x10", "5x3"], 5 → 41
Cabe todo
["2x5", "1x8"], 10 → 18
Sin espacio
["3x9"], 0 → 0
No hay botín
[], 6 → 0
Además de estas, el reto tiene pruebas ocultas que se revelan al enviar tu solución.
Empiezas con esto
Python
def botin(lotes, espacio):
passJavaScript
function botin(lotes, espacio) {
}Se abre en el navegador, con el editor y las pruebas. Este reto es del plan completo; los de O(1) y O(log n) son gratis.