=== FRACTIONAL knapsack: greedy by value per kilogram ===
  item 1: take 1.0000 of it  ->  10.00 kg, 60.00 in value
  item 2: take 1.0000 of it  ->  20.00 kg, 100.00 in value
  item 3: take 0.6667 of it  ->  20.00 kg, 80.00 in value
  TOTAL VALUE = 240.00   (this is optimal)

=== 0-1 knapsack: the same greedy rule, whole items only ===
  greedy takes  item 1 + item 2
  weight 30 kg of 50 (so 20 kg of capacity is wasted), value 160

=== 0-1 knapsack: the true optimum ===
  optimum takes item 2 + item 3
  weight 50 kg of 50, value 220
  brute force over all 2^3 = 8 subsets agrees: 220
  greedy loses 60 units of value (27.3% of the optimum)
