Cod sursa(job #42039)
#include <stdio.h>
int main()
{
int i, n, X, Y, Z, smax;
int a[100001];
FILE *f, *g;
f=fopen ("oo.in", "r");
g=fopen ("oo.out", "w");
fscanf (f, "%d", &n);
for (i=1; i<=n; i++)
fscanf (f, "%d ", &a[i]);
fclose(f);
smax=0;
Z = 0;
X = Y = a[1];
for (i=2; i<n; i++)
{
X=Y;
if (Z + a[i] > X)
X = Z + a[i];
Z = Y; Y=X;
}
if (X > smax) smax = X;
Z=0;
X=Y=0;
for (i=2; i<=n; i++)
{
X = Y;
if (X < Z + a[i])
X = Z + a[i];
Z = Y; Y = Z;
}
if (X>smax) smax=X;
fprintf(g, "%d\n", smax);
fclose(g);
return 0;
}