class Solution { public: int minCostClimbingStairs(vector<int>& cost) { int n=cost.size(); vector<int>f(n+1); f[0]=cost[0],f[1]=cost[1]; //走到第i级台阶 最小代价 //状态转移 从前一个或 前两个走上来 cost.push_back(0); for(int i=2;i<=n;i++) { f[i]=cost[i]+min(f[i-1],f[i-2]); } return f[n]; } };