First attempt: Will need more mem for the Knapsack