Task 2 (Knapsack using Dynamic Programming)