Knapsack problem.