Pagini recente » Cod sursa (job #1034070) | Cod sursa (job #2636212) | Cod sursa (job #3240093) | Cod sursa (job #2095899) | Cod sursa (job #796367)
Cod sursa(job #796367)
#include <fstream>
using namespace std;
ifstream f("oo.in");
ofstream g("oo.out");
int maxim, n, i, a[100011], b[100011];
int maxim2(int x,int y){
if(x>y)
return x;
return y;
}
int main(){
f>>n;
for(i=1; i<=n; i++)
f>>a[i];
f.close();
for(i=3; i<=n; i++)
b[i]=maxim2(b[i-1], a[i]+a[i-1]+b[i-3]);
maxim=maxim2(maxim, b[n]);
b[1]=b[2]=b[3]=b[4]=a[1]+a[2];
for(i=5; i<n; i++)
b[i]=maxim2(b[i-1], a[i]+a[i-1]+b[i-3]);
maxim=maxim2(maxim, b[n-1]);
b[3]=b[2]=b[1]=a[n]+a[1];
for(i=4; i<=n-2; i++)
{
maxim=maxim2(maxim, b[n-2]);
b[i]=maxim2(b[i-1], a[i]+a[i-1]+b[i-3]);
}
maxim=maxim2(maxim, b[n-2]);
g<<maxim;
g.close();
return 0;
}