Mental Model
We want to find the smallest number of coins that add up to a target amount by trying all coin options step by step.
Analogy: Imagine you have different sized boxes and want to fill a big box exactly using the fewest small boxes possible. You try each box size and see which combination uses the least boxes.
amount: 0 1 2 3 4 5 coins: [1, 2, 5] min_coins: [0, ∞, ∞, ∞, ∞, ∞] ↑ start with 0 amount needing 0 coins
