Pagini recente » Cod sursa (job #581438) | Cod sursa (job #2301196) | Cod sursa (job #2142926) | Cod sursa (job #2129916) | Cod sursa (job #2046581)
#include <fstream>
#define dim 100002
using namespace std;
int a[dim],b[dim],rez;
int main()
{
ifstream f("oo.in");
ofstream g("oo.out");
//7
//3 9 4 8 6 50 2
//69
int i,j,k,N;
f>>N;
for(i=1;i<=N;++i)
f>>a[i];
//luam 1 si 2
b[2]=b[3]=b[4]=a[1]+a[2];
for(i=5;i<N;++i)
{
b[i]=b[i-1];
if(b[i]<b[i-3]+a[i-1]+a[i])
b[i]=b[i-3]+a[i-1]+a[i];
}
rez=max(rez,b[N-1]);
//nu luam 1
b[0]=b[1]=b[2]=0;
for(i=3;i<=N;++i)
{
b[i]=b[i-1];
if(b[i]<b[i-3]+a[i-1]+a[i])
b[i]=b[i-3]+a[i-1]+a[i];
}
rez=max(rez,b[N]);
//luam N si 1
b[1]=b[2]=b[3]=a[N]+a[1];
for(i=4;i<N;++i)
{
b[i]=b[i-1];
if(b[i]<b[i-3]+a[i-1]+a[i])
b[i]=b[i-3]+a[i-1]+a[i];
}
rez=max(rez,b[N-2]);
g<<rez<<'\n';
return 0;
}