8 条题解

  • 0
    @ 2025-3-23 20:23:10
    #include<bits/stdc++.h>
    using namespace std;
    
    // var
    // int d[1005],a[1005][1005],n;
    int T;
    
    // func
    // 404 Not Found =)
    
    int main(){
        // in
        cin >> T;
        for(int i=1;i<=T;i++){
            int n;
            cin >> n;
            int dp[n+1];
            for(int j=1;j<=n;j++){
                cin >> dp[j];
                if(j - 2 > 0){
                    dp[j] = max(dp[j-2] + dp[j],dp[j-1]); 
                    // cout << "dp[j-2] : " << dp[j-2] << " , dp[j-1] : "
                    //      << dp[j-1] << endl;
                }else if(j - 1 > 0){
                    // dp[i] = max(dp[j] , dp[j-1]);
                    dp[j] = max(dp[j],dp[j-1]);
                }
            }
            // out 
            cout << dp[n] << endl;
        }
    
        // out
        // cout << d[1];
        
        return 0;
    }
    

    信息

    ID
    2800
    时间
    1000ms
    内存
    128MiB
    难度
    6
    标签
    递交数
    427
    已通过
    136
    上传者