Pagini recente » Arhiva de probleme | Cod sursa (job #2800440) | Cod sursa (job #1660664) | Cod sursa (job #1006844) | Cod sursa (job #3291714)
#include <iostream>
#include <fstream>
using namespace std;
const int dim=1e5+2;
ifstream f("oo.in");
ofstream g("oo.out");
int v[dim],s[dim];
int main()
{
int n,i,j,mx=0;
f>>n;
for(i=1;i<=n;i++)
{
f>>v[i];
}
///caz 1
s[2]=s[3]=s[4]=v[1]+v[2];
for(i=5;i<n;i++)
{
s[i]=max(s[i-1],v[i]+v[i-1]+s[i-3]);
}
mx=s[n-1];
///caz 2
s[1]=s[2]=s[3]=v[1]+v[n];
for(i=4;i<n-1;i++)
{
s[i]=max(s[i-1],v[i]+v[i-1]+s[i-3]);
}
mx=max(mx,s[n-2]);
/// caz 3
s[1]=s[2]=0;
for(i=3;i<=n;i++)
{
s[i]=max(s[i-1],v[i]+v[i-1]+s[i-3]);
}
mx=max(mx,s[n]);
g<<mx;
return 0;
}