11 lines
370 B
Clojure
11 lines
370 B
Clojure
(defn best-by-value [ks]
|
|
(reduce #(if (> (:value %1) (:value %2)) %1 %2) ks))
|
|
|
|
(defn print-knapsack[k]
|
|
(let [ {val :value w :weight v :volume} k
|
|
{p :p i :i g :g} ^k]
|
|
(println "Maximum value:" (float val))
|
|
(println "Total weight: " (float w))
|
|
(println "Total volume: " (float v))
|
|
(println "Containing: " p "Panacea," i "Ichor," g "Gold")))
|