LeetCode Card 321 — 2D Dynamic Programming / Breakdown
Pattern signal
This pattern usually appears when the prompt involves state depends on two indices, two strings, or grid-like subproblems. Longest Common Subsequence, Edit Distance, unique paths with obstacles, and many grid optimizations fit here.
What Breakdown means here
In BASIC, the Breakdown step is where you identify the signal words, constraints, and output shape that reveal the pattern family. For 2D Dynamic Programming, that matters because the pattern only becomes useful once the candidate is explicit about what is being tracked, reduced, or preserved.
Interview move
A strong move is to split the problem before trying to solve it. In this pattern family, say out loud what representation makes the problem easier: the map entry, the pointer invariant, the recursion contract, the queue contents, or the DP state. That keeps the implementation attached to a reason.
Common miss
Candidates drown in table details because they never define what each cell actually means. BASIC reduces that risk because the stage sequence forces you to earn the implementation instead of jumping straight into it.
BASIC prompt
“Given that this looks like 2D Dynamic Programming, what is the simplest way to identify the signal words, constraints, and output shape that reveal the pattern family?”