Pagini recente » Cod sursa (job #1317380) | Cod sursa (job #1705739) | Cod sursa (job #2654446) | Cod sursa (job #2642507) | Cod sursa (job #2986422)
#include <bits/stdc++.h>
#define M 100010
using namespace std;
ifstream f("oo.in");
ofstream g("oo.out");
int n, v[M], s[M], m[M];
int main()
{
f>>n;
for(int i=1; i<=n; i++)f>>v[i];
for(int i=1; i<n; i++)s[i]=v[i]+v[i+1];
s[n]=v[1]+v[n];
for(int i=1; i<=6; i++)s[n+i]=s[i];
//n+=6;
//for(int i=1; i<=n+6; i++)g<<s[i]<<" ";
//g<<endl;
for(int i=6; i<=n+6; i++)
{
if(m[i-3] && m[i-4] && m[i-5])m[i]=max(m[i-3]+s[i],max(m[i-4]+s[i], m[i-5]+s[i]));
else if(m[i-3] && m[i-4])m[i]=max(m[i-3]+s[i], m[i-4]+s[i]);
else if(m[i-3])m[i]=m[i-3]+s[i];
else m[i]=s[i];
}
//g<<endl;
//for(int i=1; i<=n+6; i++)g<<m[i]<<" ";
g<<m[n+6]-s[n+6];
return 0;
}