knapsack: branch and bound approach