#include <iostream> #include <vector> using namespace std; int main() { int n; cin >> n; vector<int> costs(n, 0); vector<int> dp(n + 2, 0); for (int i = 0; i < n; i++) { cin >> costs[i]; } //初始化一下,当成爬台阶、斐波那契数列做 dp[0] = 0; dp[1] = 0; for (int i = 2; i < n + 2; i++) { dp[i] = min(dp[i - 2] + costs[i - 2], dp[i - 1] + costs[i - 2]); } // for (auto temp : dp) { // cout << temp << " "; // } // cout << endl; cout << min(dp[n + 1], dp[n]) << endl; return 0; } // 64 位输出请用 printf("%lld")