Pagini recente » Cod sursa (job #1346105) | Cod sursa (job #920043) | Cod sursa (job #2067851) | Cod sursa (job #2682158) | Cod sursa (job #197553)
Cod sursa(job #197553)
var f1,f2:text;
i,j,n,maxim,x:longint;
a:array[0..100010] of longint;
v:array[0..3,0..100010] of longint;
function max(x,y:longint):longint;
begin
max:=x;
if max<y then
max:=y;
end;
procedure caz(st,fn:longint);
begin
for i:=0 to 3 do
for j:=0 to 100010 do
v[i,j]:=0;
v[1,st]:=a[st];
v[2,st]:=a[st]+a[st-1];
for i:=st+1 to fn do
begin
v[0,i]:=max(v[0,i-1],v[2,i-1]);
v[1,i]:=v[0,i-1]+a[i];
v[2,i]:=v[1,i-1]+a[i];
end;
if max(v[2,fn],v[0,fn])>maxim then
maxim:=max(v[2,fn],v[0,fn]);
end;
begin
assign(f1,'oo.in');
reset(f1);
assign(f2,'oo.out');
rewrite(f2);
read(f1,n);
for i:=1 to n do
read(f1,a[i]);
a[0]:=a[n];
maxim:=0;
caz(1,n-2);
caz(2,n-1);
caz(3,n);
writeln(f2,maxim);
close(f1);
close(f2);
end.