Pagini recente » Cod sursa (job #2701067) | Cod sursa (job #2609856) | Cod sursa (job #159367) | Cod sursa (job #1633891) | Cod sursa (job #2287457)
#include <bits/stdc++.h>
#define Dim 100005
using namespace std;
ifstream f("oo.in");
ofstream g("oo.out");
int V[Dim],N,ans;
int dp[6][Dim];
int main()
{
f>>N;
for(int i=1;i<=N;i++) f>>V[i];
for(int i=1;i<=3;i++)
{
int st;
if(i-3<=0) st=N+i-3;
else st=i-3;
if(i==3)
{
st--;
dp[i][N]=V[N]+V[1];
}
for(int j=st;j>i+2;j--)
{
dp[i][j]=max(dp[i][j],dp[i][j+3]+V[j]+V[j+1]);
dp[i][j]=max(dp[i][j],dp[i][j+4]+V[j]+V[j+1]);
dp[i][j]=max(dp[i][j],dp[i][j+5]+V[j]+V[j+1]);
}
ans=max(ans,dp[i][i+3]+V[i]+V[i+1]);
ans=max(ans,dp[i][i+4]+V[i]+V[i+1]);
ans=max(ans,dp[i][i+5]+V[i]+V[i+1]);
}
g<<ans;
return 0;
}