LeetCode 70 Climbing Stairs - Implementation

The approach

Fibonacci-style iteration. Keep only two previous values.

def climbStairs(n): if n <= 2: return n prev2, prev1 = 1, 2 for i in range(3, n + 1): curr = prev1 + prev2 prev2 = prev1 prev1 = curr return prev1

O(n)O(n) time, O(1)O(1) space.