Junior
Detailed answer
Dynamic Programming
DSA & Coding Interviews
How do you approach Climbing Stairs and House Robber?
Short answer: Climbing Stairs: ways(n) = ways(n-1) + ways(n-2) — Fibonacci DP. House Robber: dp[i] = max(dp[i-1], dp[i-2] + nums[i]) — cannot rob adjacent houses. Both reduce to O(1) space with two rolling variables.
Complexity
Time O(n), Space O(1) optimized.
Common follow-ups
- House Robber II (circular)
- Climbing stairs with 1..k steps
- Decode Ways
Always define the recurrence in words before writing code.
Share this Q&A
Share preview image: https://www.toolliyo.com/images/toolliyo-logo.png