闫氏DP法
class Solution {
public:
int minCostClimbingStairs(vector<int>& cost) {
int n = cost.size();
vector<int> f(n + 1, 0);
f[1] = cost[0];
f[2] = cost[1];
for (int i = 3; i <= n; i++) {
f[i] = min(f[i - 1], f[i - 2]) + cost[i - 1];
}
return min(f[n], f[n - 1]);
}
};