150强访谈中等

爬楼梯的最低成本

“最小成本爬楼梯”问题的详细指南和 Python 实现。

问题陈述

中等

给定一个整数数组 cost,其中 cost[i] 是楼梯上第 i 步的成本。支付费用后,您可以爬一级或两级台阶。

您可以从索引 0 的步骤开始,也可以从索引 1 的步骤开始。

返回到达楼层顶部的最低成本。

编写一个函数 minCostClimbingStairs(cost: List[int]) -> int

约束条件
  • 2 <= len(cost) <= 1000
  • 0 <= cost[i] <= 999

示例

Example 1
Input
cost = [10,15,20]
Output
15
Explanation

Start at index 1, pay 15, and climb to the top. Total is 15.

Example 2
Input
cost = [1,100,1,1,1,100,1,1,100,1]
Output
6
Explanation

Start at index 0, pay 1, climb to 2, pay 1, climb to 4, pay 1, climb to 6, pay 1, climb to 7, pay 1, climb to 9, pay 1, climb to top. Total is 6.

Need a Hint?
考虑使用一维 DP 特定的数据结构,例如集合或堆。
Edge Cases to Watch
  • 空输入结构
  • 单元素输入
  • 大数值范围

准备好解决了吗?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

在编辑器中打开
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

推荐的 Python 资源

通过相关的交互式教程、备忘单和代码比较来扩展您的知识。