Pagini recente » Cod sursa (job #3140937) | Cod sursa (job #2108637) | Cod sursa (job #2113052) | Cod sursa (job #2341189) | Cod sursa (job #1933609)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
int n,a[100005],dp[100005],mx;
int main()
{
fin>>n;
for(int i=1;i<=n;i++)
fin>>a[i];
dp[0]=a[1]+a[n];
mx=dp[0];
for(int i=1;i<n-1;i++)
{
for(int j=3;j<=6;j++)
{
int nr=i-j;
if(nr>0 && dp[nr]>dp[i])
dp[i]=dp[nr];
}
dp[i]=dp[i]+a[i]+a[i+1];
mx=max(dp[i],mx);
//cout<<dp[i]<<" ";
}
///N-1
for(int j=3;j<=6;j++)
{
int nr=n-1-j;
if(nr>0 && dp[nr]>dp[n-1])
dp[n-1]=dp[nr];
}
dp[n-1]=dp[n-1]+a[n-1]+a[n]-a[1];
mx=max(dp[n-1],mx);
fout<<mx<<"\n";
return 0;
}