Cod sursa(job #332597)

Utilizator andrey932Andrei andrey932 Data 18 iulie 2009 23:11:19
Problema Buline Scor 20
Compilator fpc Status done
Runda Arhiva de probleme Marime 1 kb
uses math;
var t:text;
    x:array[0..400000] of integer;
    a,b,n,i,j,ma,l,lung,dela,lungl,delal:longint;


begin
assign(t,'buline.in'); reset(t);
readln(t,n);
l:=0; ma:=-555555; lung:=0;

for i:=1 to 2*n-1 do
  begin
   if i<=n then
    begin
      read(t,x[i],a);
      if a=0 then x[i]:=-x[i];
      x[i+n]:=x[i];
    end;

  //ma:=max(ma+x[i],x[i]);
    if ma>l then begin l:=ma; delal:=dela; lungl:=lung; end;
    if (lung<n) then
      begin
        if (0>ma) then begin lung:=1; dela:=i; ma:=x[i]; end
          else begin inc(lung); ma:=ma+x[i]; end;
      end
        else
           begin
             if (0>ma) then begin lung:=1; dela:=i; end
             else
               begin ma:=ma-x[i]; lung:=n-1; dela:=dela+1; end;
               if (0>ma) then begin lung:=1; dela:=i; ma:=x[i]; end
               else begin inc(lung); ma:=ma+x[i]; end;

           end;

  end;
close(t); assign(t,'buline.out'); rewrite(t);
writeln(t,l,' ',delal,' ',lungl);
close(t);


end.