Cod sursa(job #46353)

Utilizator savimSerban Andrei Stan savim Data 2 aprilie 2007 16:22:27
Problema Oo Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 4.03 kb
var f1,f2:text;
    q,s,n,i:longint;
    err:integer;
    a:array[1..100000] of longint;
    x:char;
begin
assign(f1,'oo.in');
assign(f2,'oo.out');
reset(f1);
rewrite(f2);
readln(f1,n);
for i:=1 to n do
 begin
  read(f1,x);
  val(x,q,err);
  a[i]:=q;
  read(f1,x);
 end;
s:=0;
i:=0;
while i<n-3 do
 begin
  i:=i+1;
  if i<=2 then
           begin
            if (i=1) then begin
                          if(a[1]+a[2]>a[3]+a[4]) and
                            (a[1]+a[2]>a[n]+a[n-1]) then begin
                                                          s:=s+a[1]+a[2];
                                                          a[1]:=0;
                                                          a[2]:=0;
                                                          a[3]:=0;
                                                          a[n]:=0;
                                                         end;
                         end
                     else begin
                           if (a[2]+a[3]>a[n]+a[1]) and
                              (a[2]+a[3]>a[4]+a[5]) then begin
                                                           s:=s+a[2]+a[3];
                                                           a[1]:=0;
                                                           a[2]:=0;
                                                           a[3]:=0;
                                                           a[4]:=0;
                                                          end;
                          end;
           end
          else if i>=n-1 then
                          begin
                           if i=n-1 then begin
                                          if (a[n-1]+a[n]>a[1]+a[2]) and
                                             (a[n-1]+a[n]>a[n-2]+a[n-3]) then
                                                                          begin
                                                                           s:=s+a[n-1]+a[n];
                                                                           a[n-2]:=0;
                                                                           a[n-1]:=0;
                                                                           a[n]:=0;
                                                                           a[1]:=0;
                                                                          end;
                                         end
                                    else begin
                                          if (a[n]+a[1]>a[2]+a[3]) and
                                             (a[n]+a[1]>a[n-1]+a[n-2]) then
                                                                        begin
                                                                         s:=s+a[n]+a[1];
                                                                         a[n]:=0;
                                                                         a[1]:=0;
                                                                         a[n-1]:=0;
                                                                         a[2]:=0;
                                                                        end;

                                         end;
                          end
                         else
                          begin
                           if (a[i]+a[i+1]>a[i+2]+a[i+3]) and
                              (a[i]+a[i+1]>a[i-1]+a[i-2]) then
                                                           begin
                                                            s:=s+a[i]+a[i+1];
                                                            a[i]:=0;
                                                            a[i+1]:=0;
                                                            a[i-1]:=0;
                                                            a[i+2]:=0;
                                                           end;
                          end;
 end;
writeln(f2,s);
close(f1);
close(f2);
end.