Cod sursa(job #1703390)

Utilizator stefzahZaharia Stefan Tudor stefzah Data 16 mai 2016 21:09:45
Problema Oo Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
int n,a[100005],i,s[100005],mx;
int main()
{fin>>n;
 for(i=1;i<=n;i++)
    fin>>a[i];
 s[1]=0;
 s[2]=a[1]+a[2];
 for(i=3;i<n;i++)
    {s[i]=max(s[i-3]+a[i]+a[i-1],s[i-1]);
    }
 mx=s[n-1];
 s[n]=0;
 s[n-1]=a[n]+a[n-1];
 for(i=n-2;i>1;i--)
    {s[i]=max(s[i+3]+a[i]+a[i+1],s[i+1]);
    }
 if(mx<s[2])mx=s[2];
 s[1]=a[1]+a[n];
 s[2]=max(a[2]+a[1],s[1]);
 for(i=3;i<n-1;i++)
    {s[i]=max(s[i-3]+a[i]+a[i-1],s[i-1]);
    }
    if(mx<s[n-2])mx=s[n-2];
 s[n]=a[n]+a[1];
 s[n-1]=max(a[n-1]+a[n],s[n]);
 for(i=n-2;i>2;i--)
    {s[i]=max(s[i+3]+a[i]+a[i+1],s[i+1]);
    }
if(mx<s[3])mx=s[3];
 fout<<mx;
}