Cod sursa(job #1504390)

Utilizator gbibBacotiu Gabi gbib Data 17 octombrie 2015 18:06:12
Problema Oo Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <bits/stdc++.h>

using namespace std;
ifstream in("oo.in");
ofstream out("oo.out");
int a[100001],d[100001][4];
int main()
{int n,j,mx=0,i;
in>>n;
for(i=1;i<=n;i++)
{
    in>>a[i];
}
d[1][1]=d[2][1]=d[3][1]=a[1]+a[n];
for(i=4;i<=n-2;i++)
{
    d[i][1]=max(d[i-3][1]+a[i]+a[i-1],d[i-1][1]);
}
mx=max(mx,d[n-2][1]);
d[4][2]=d[2][2]=d[3][2]=a[1]+a[2];

for(i=5;i<=n-1;i++)
{
    d[i][2]=max(d[i-3][2]+a[i]+a[i-1],d[i-1][2]);
}
mx=max(mx,d[n-1][2]);
for(i=3;i<=n;i++)
{
    d[i][3]=max(d[i-3][3]+a[i-1]+a[i],d[i-1][3]);
}
mx=max(mx,d[n][3]);
out<<mx<<'\n';
    return 0;
}