Cod sursa(job #122684)

Utilizator valytgjiu91stancu vlad valytgjiu91 Data 13 ianuarie 2008 14:24:19
Problema Oo Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.88 kb
var n,i,j,k:integer;
   rez:longint;
   oo:array[1..10000] of integer;
   a:array[1..10000] of longint;
   f,g:text;
{}
function max (a,b:longint):longint;
begin
if a>b then max:=a
else max:=b;
end;
{}
begin
assign(f,'oo.in');
reset(f);
read(f,n);
for i:=1 to n do read(f,oo[i]);
close(f);
if n=2 then rez:=oo[1]+oo[2]
        else
        for k:=0 to 1 do begin
                  a[k]:=0;
                  a[(k+1)mod n]:=0;
                  a[(k+2)mod n]:=oo[(k+1)mod n]+oo[(k+2) mod n];
                  i:=(k+3)mod n;
                  while i<>k do begin
                          a[i]:=max(a[(i-1+n)mod n],a[(i-3+n)mod n]+oo[(i-1+n)mod n]+oo[i]);
                          i:=(i+1)mod n;
                          end;
                          rez:=max(rez,a[(k-i+n)mod n]);
        end;
assign(g,'oo.out');
rewrite(g);
writeln(g,rez);
close(g);
end.