Cod sursa(job #1555287)

Utilizator EuEricCiordel Rromeo EuEric Data 22 decembrie 2015 15:50:41
Problema Oo Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<algorithm>
#include<fstream>
using namespace std;
const int NMAX=100005;
int oo[NMAX];
int d[NMAX];
int main()
{
    ifstream cin("oo.in");
    ofstream cout("oo.out");
    int n;
    cin>>n;
    for(int i=1; i<=n; ++i)
        cin>>oo[i];
    int ans1=0;
    for(int i=3; i<=n; ++i)
        d[i]=max(d[i-3]+oo[i]+oo[i-1],d[i-1]);
    ans1=d[n];
    int aux=oo[n];
    for(int i=n; i>=1; --i)
        oo[i]=oo[i-1];
    oo[1]=aux;
    int ans2=0;
    for(int i=3; i<=n; ++i)
        d[i]=max(d[i-3]+oo[i]+oo[i-1],d[i-1]);
    ans2=d[n];
    aux=oo[n];
    for(int i=n; i>=1; --i)
        oo[i]=oo[i-1];
    oo[1]=aux;
    int ans3=0;
    for(int i=3; i<=n; ++i)
        d[i]=max(d[i-3]+oo[i]+oo[i-1],d[i-1]);
    ans3=d[n];
    cout<<max(max(ans1,ans2),ans3);
    return 0;
}