https://leetcode-cn.com/problems/min-cost-climbing-stairs/
状态表示:f[i] 表示到达i层楼梯需要的最少花费
状态转移: f[i]=min(f[i-1]+f[i-2])+cost[i]
class Solution {
public:
int minCostClimbingStairs(vector<int>& cost)
{
cost.push_back(0);
int n=cost.size();
vector<int>f(n+1,0x3f3f3f3f);
f[0]=cost[0],f[1]=cost[1];
for(int i=2;i<n;i++) f[i]=min(f[i-1],f[i-2])+cost[i];
return f[n-1];
}
};