Pagini recente » Cod sursa (job #2107823) | Cod sursa (job #1881988) | Cod sursa (job #346623) | Cod sursa (job #586121) | Cod sursa (job #2422290)
#include <fstream>
using namespace std;
ifstream cin ("oo.in");
ofstream cout ("oo.out");
int d[100003],v[100013],n;
int dp (int st, int dr)
{
d[st]=d[st-1]=0;
d[st+1]=v[st+1]+v[st];
for(int i=st+2;i<=dr;++i)
d[i]=max(d[i-1],v[i]+v[i-1]+d[i-3]);
return d[dr];
}
int main()
{
int i,j;
cin>>n;
for(i=1;i<=n;++i)
cin>>v[i];
v[n+1]=v[1];
v[n+2]=v[2];
cout<<max(max(dp(2,n),dp(3,n+1)),dp(1,n-1));
return 0;
}