Cod sursa(job #3201107)

Utilizator iusty64Iustin Epanu iusty64 Data 6 februarie 2024 19:44:46
Problema Oo Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
#include <iostream>

using namespace std;

const int Vmax = 100001;
int a[Vmax], dp[Vmax];

int main(){
    ifstream fin("oo.in");
    ofstream fout("oo.out");
    int n;
    fin>>n;
    for(int i=1;i<=n;i++)
        fin>>a[i];
    dp[1]=0;
    for(int i=2;i<=n-1;i++){
        dp[i] = max(dp[i-1], a[i] + a[i-1] + dp[i-3]);
    }
    int solutie=dp[n-1];
    dp[2]=0;
    for(int i=3;i<=n;i++){
        dp[i] = max(dp[i-1], a[i] + a[i-1] + dp[i-3]);
    }
    solutie=max(solutie, dp[n]);
    dp[1]=dp[3]=0;
    dp[2]=a[1]+a[2];
    for(int i=4;i<=n-2;i++){
        dp[i] = max(dp[i-1], a[i] + a[i-1] + dp[i-3]);
        cout<<dp[i]<<" ";
    }
    cout<<dp[n-2];
    solutie=max(solutie, dp[n-2]);
    fout<<solutie;
}