Cod sursa(job #1770783)

Utilizator Liviu_Ionut_MoantaMoanta Ionut Liviu Liviu_Ionut_Moanta Data 4 octombrie 2016 20:55:11
Problema Oo Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
long long n,i,v[100003],d1[100003],d2[100003],d3[100003],maxim;
int main(){
    fin>>n;
    for(i=1;i<=n;i++){
        fin>>v[i];
    }
    d1[1]=v[n]+v[1];
    d2[2]=v[1]+v[2];
    d3[3]=v[n-1]+v[n];
    for(i=3;i<=n-2;i++){
        d1[i]=max(d1[i-1],d1[i-3]+v[i]+v[i-1]);
    }
    for(i=4;i<=n-1;i++){
        d2[i]=max(d2[i-1],d2[i-3]+v[i]+v[i-1]);
    }
    for(i=2;i<=n-3;i++){
        d3[i]=max(d3[i-1],d3[i-3]+v[i]+v[i-1]);
    }
    maxim=max(d1[n-2],d2[n-1]);
    maxim=max(maxim,d3[n-3]);
    fout<<maxim;
    return 0;

}