How many unique paths exist from the top-left to the bottom-right of an m by n grid moving only right or down?
PICTURE THIS: FLEX VS GRID
Flex — one line
Grid — rows + cols
Simple meaning
dp[r][c] = dp[r-1][c] + dp[r][c-1], with first row/column as 1.
WHY — DP instead of guessing?
Why interviewers care about DP:
DP questions separate people
who only read docs from people who shipped.
Keep it short, concrete,
and tied to DSA work.
Stay structured
Name the idea, why it exists, then one short example.
Close cleanly
End with when you use it and one common pitfall.
STEPS — What happens step by step?
Before you speak the answer, walk the interviewer through these steps:
- 1dp[r][c] = dp[r-1][c] +
dp[r][c-1], with first row/column as 1.
- 2Why it exists
Time and space are O(m*n)
- 3you can keep one
row for O(n) space.
- 4Combinatorics C(m+n-2, m-1) is
O(min(m,n)) arithmetic if they allow it.
- 5Common mistake
What juniors usually get wrong.
- 6Close
When you pick this over the alternative.
EXAMPLE — See it in action
Here's a short line you can speak, broken into clear beats:
Say this line
“Time and space are O(m*n)”
Break into beats
TimeandspaceareOm
Speaking order
2987408337471632900
Note: Adapt this scaffold to your own project — keep it under 60–90 seconds.
Key takeaway
dp[r][c] = dp[r-1][c] + dp[r][c-1], with first row/column as 1. Time and space are O(m*n)