1 条题解

  • 2
    @ 2026-7-25 19:43:30
    #include<bits/stdc++.h>
    using namespace std;
    int main(){
        ios::sync_with_stdio(false);
        cin.tie(nullptr);
        int n;
        if (!(cin >> n)) {
            return 0;
        }
        vector<int> a(n+1);
        for (int i = 1; i <= n; ++i) {
            cin >> a[i];
        }
        vector<long long> dp(n + 1, 0);
        dp[0] = 1;
        if (n >= 1) {
            dp[1] = dp[0] + a[1];
        }
        for (int i = 2; i <= n; ++i) {
            dp[i] = max(dp[i - 1], dp[i - 2]) + a[i];
        }
        long long ans;
        if (n == 0) {
            ans = dp[0];
        } else if (n == 1) {
            ans = max(dp[1], dp[0]);
        } else {
            ans = max(dp[n], dp[n - 1]);
        }
        cout << ans << endl;
    	return 0;
    }
    • 1

    信息

    ID
    127
    时间
    1000ms
    内存
    256MiB
    难度
    9
    标签
    递交数
    28
    已通过
    4
    上传者