Cod sursa(job #1774008)

Utilizator KronSabau Valeriu Kron Data 8 octombrie 2016 14:28:22
Problema Oo Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <iostream>
#include <fstream>
using namespace std;
int a[100005],n,nr[100005],a2[100005],a3[100005];
ifstream f("oo.in");
ofstream g("oo.out");

int main()
{
    int solutie=0;
    f>>n;
    for(int i=1;i<=n;i++)
        f>>nr[i];


    for(int i=1;i<n;i++){

        if(i<3) a[i]=max(a[i-1],nr[i-1]+nr[i]+a[0]);
        else  a[i]=max(a[i-1],nr[i-1]+nr[i]+a[i-3]);
    }
    solutie=a[n-1];

    a2[1]=nr[1]+nr[n];

    for(int i=3;i<=n-1;i++)
        a2[i]=max(a2[i-1],nr[i-1]+nr[i]+a2[i-3]);

    solutie=max(solutie,a[n-2]);

    for(int i=3;i<=n;i++)
        a3[i]=max(a3[i-1],nr[i-1]+nr[i]+a3[i-3]);


    solutie=max(solutie,a3[n]);

    g << solutie << "\n";

    return 0;
}