Lhakpa es una guía de montaña y porteadora sherpa. Después de meses de planificación cuidadosa, la expedición para la que trabaja Lhakpa está a punto de partir. Le pagarán el valor de lo que llevó hasta el campamento base.
Frente a ella hay muchos objetos, cada uno con un valor y un peso. Lhakpa con gusto tomaría todos los objetos, pero su mochila solo puede cargar cierta cantidad de peso.
Tu tarea es determinar qué objetos llevar para que el valor total de su selección sea el máximo, teniendo en cuenta la capacidad de carga de la mochila.
Los objetos se representarán como una lista de objetos. Cada objeto tendrá un peso y un valor. Todos los valores dados serán estrictamente positivos. Lhakpa solo puede llevar uno de cada objeto.
Por ejemplo:
Items: [
{ "weight": 5, "value": 10 },
{ "weight": 4, "value": 40 },
{ "weight": 6, "value": 30 },
{ "weight": 4, "value": 50 }
]
Knapsack Maximum Weight: 10
Para el ejemplo anterior, el primer objeto tiene un peso de 5 y un valor de 10, el segundo objeto tiene un peso de 4 y un valor de 40, y así sucesivamente. En este ejemplo, Lhakpa debe llevar el segundo y el cuarto objeto para maximizar su valor, que en este caso es 90. No puede conseguir más de 90, ya que su mochila tiene un límite de peso de 10.
Regístrate en Exercism para aprender y dominar ReasonML con 31 ejercicios y mentoría humana real, todo gratis.