Pagini recente » Cod sursa (job #2298097) | Cod sursa (job #3154043) | Cod sursa (job #2170239) | Cod sursa (job #1018564) | Cod sursa (job #73521)
Cod sursa(job #73521)
#include<stdio.h>
#define val 100001
long a[val],s,e,n,q;
long long suma,w;
void citire()
{
freopen("oo.in","r",stdin);
scanf("%ld", &n);
for (long i=0; i<n; i++)
scanf("%ld", &a[i]);
fclose(stdin);
}
void rezolvare(long l,long o,long p)
{
if (l+1==n)
w=a[l]+a[0];
else w=a[l]+a[l+1];
s=0;
e=-10;
for (long i=o+1; i<=p; i++)
{
q=a[i]+a[i-1];
if (i-2>e)
{
w+=q;
s=q;
e=i;
}
else if (q>s && i-2<=e)
{
w-=s;
w+=q;
s=q;
e=i;
}
}
if (w>suma)
suma=w;
}
void printare()
{
freopen("oo.out","w",stdout);
printf("%lld",suma);
fclose(stdout);
}
int main()
{
citire();
suma=0;
rezolvare(0,3,n-2);
rezolvare(1,4,n-1);
rezolvare(n-1,2,n-3);
printare();
return 0;
}