746. Min Cost Climbing Stairs - LeetCode Solution


Dynamic Programming

Python Code:

class Solution:
    def minCostClimbingStairs(self, cost: List[int]) -> int:

        ans = [cost[0] , cost[1]]

        if len(cost) == 2:
            return min(ans)



        for i in range(2, len(cost), 1):
            a = ans[-1]
            b = ans[-2]

            ans.append(min(a, b) + cost[i])
        
        return min(ans[-1], ans[-2])
            
        


Comments

Submit
0 Comments
More Questions

630C - Lucky Numbers
1208B - Uniqueness
1384A - Common Prefixes
371A - K-Periodic Array
1542A - Odd Set
1567B - MEXor Mixup
669A - Little Artem and Presents
691B - s-palindrome
851A - Arpa and a research in Mexican wave
811A - Vladik and Courtesy
1006B - Polycarp's Practice
1422A - Fence
21D - Traveling Graph
1559B - Mocha and Red and Blue
1579C - Ticks
268B - Buttons
898A - Rounding
1372B - Omkar and Last Class of Math
1025D - Recovering BST
439A - Devu the Singer and Churu the Joker
1323A - Even Subset Sum Problem
1095A - Repeating Cipher
630F - Selection of Personnel
630K - Indivisibility
20B - Equation
600B - Queries about less or equal elements
1015A - Points in Segments
1593B - Make it Divisible by 25
680C - Bear and Prime 100
1300A - Non-zero