70. Climbing Stairs - LeetCode Solution


Dynamic Programming

Python Code:

class Solution:
    
    def climbStairs(self, n: int) -> int:
        
        
        def climb(n, x):
            if n<0:
                return 0
            if n==0:
                return 1
            
            if x[n] != -1:
                return x[n]
            
            else:
                x[n] = climb(n-1, x) + climb(n-2, x)
                return x[n]


            
        return climb(n, [-1] *(n+1))
                  


Comments

Submit
0 Comments
More Questions

1333A - Little Artem
432D - Prefixes and Suffixes
486A - Calculating Function
1373B - 01 Game
1187A - Stickers and Toys
313B - Ilya and Queries
579A - Raising Bacteria
723A - The New Year Meeting Friends
302A - Eugeny and Array
1638B - Odd Swap Sort
1370C - Number Game
1206B - Make Product Equal One
131A - cAPS lOCK
1635A - Min Or Sum
474A - Keyboard
1343A - Candies
1343C - Alternating Subsequence
1325A - EhAb AnD gCd
746A - Compote
318A - Even Odds
550B - Preparing Olympiad
939B - Hamster Farm
732A - Buy a Shovel
1220C - Substring Game in the Lesson
452A - Eevee
1647B - Madoka and the Elegant Gift
1408A - Circle Coloring
766B - Mahmoud and a Triangle
1618C - Paint the Array
469A - I Wanna Be the Guy