题解 | #最小花费爬楼梯#
最小花费爬楼梯
https://www.nowcoder.com/practice/9b969a3ec20149e3b870b256ad40844e
#include <iostream> #include <vector> using namespace std; vector<int> CalculateValue(int n, vector<int> cost) { vector<int> value; for (int i = 0; i <= n; ++i){ if (i == 0) value.emplace_back(0); else if (i == 1) value.emplace_back(0); else { int tmp; tmp = min(value[i-1]+cost[i-1], value[i-2]+cost[i-2]); value.emplace_back(tmp); } } return value; } int main() { int n, tmp; vector<int> cost, value; cin >> n; for (int i = 0; i < n; ++i) { cin >> tmp; cost.emplace_back(tmp); } value = CalculateValue(n, cost); cout << value.back(); return 0; }
动态规划
#我的实习求职记录#