Pagini recente » Cod sursa (job #2749336) | Cod sursa (job #1002182) | Cod sursa (job #2635607) | Cod sursa (job #690609) | Cod sursa (job #1908901)
#include <fstream>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
int i,n,v[100001],h,d[100001];
int maxi(int a,int b)
{
if(a>b)return a;
else return b;
}
int din(int a,int b)
{
d[a]=0;
d[a+1]=v[a+1]+v[a];
d[a+2]=max(d[a+1],v[a+1]+v[a+2]);
for(int i=a+3;i<=b;i++)
d[i]=max(d[i-1],d[i-3]+v[i]+v[i-1]);
return d[b];
}
int main()
{
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i];
if(n==3)
fout<<max(max(v[1]+v[2],v[1]+v[3]),v[2]+v[3]);
else
{
fout<<maxi(maxi(din(2,n),din(1,n-1)),din(3,n+1));
}
return 0;
}