Anonymous user
Knapsack problem/Continuous: Difference between revisions
→{{header|Ruby}}: items(Hash -> Array), correct output format
(jq) |
(→{{header|Ruby}}: items(Hash -> Array), correct output format) |
||
Line 2,322:
=={{header|Ruby}}==
<lang ruby>items = [ [:beef , 3.8, 36],
[:pork , 5.4, 43],
[:greaves, 2.4, 45],
[:flitch , 4.0, 30],
[:brawn , 2.5, 56],
maxW, value = 15, 0▼
[:sausage, 5.9, 98] ].sort_by{|item, weight, price| -price / weight}
▲ :ham => [3.6,90],
▲maxW, value = 15.0, 0
items.each do |item, weight, price|
▲ if (maxW-=g[0]) > 0
▲ puts "Take all #{n}"
▲ value += g[1]
else
puts "Take
"Total value of swag is %g" % (value+(price/weight)*t)
break
end
end</lang>▼
▲</lang>
{{out}}
<pre>
Line 2,352 ⟶ 2,348:
Take all brawn
Take all greaves
Take 3.5kg of welt
Total value of swag is 349.
</pre>
|