Mental Model
We want to pick items with values and weights to maximize value without exceeding weight limit. Each item can be chosen only once.
Analogy: Imagine packing a backpack for a trip. You have limited space and many items. You want to pack the most valuable things without overloading the bag.
Items: [weight, value] [2, 3] [3, 4] [4, 5] [5, 8] Knapsack capacity: 5 Backpack capacity -> [0] [1] [2] [3] [4] [5] Values stored here for best packing
