Pagini recente » Cod sursa (job #2945846) | Cod sursa (job #2289497) | Cod sursa (job #2150807) | Cod sursa (job #871572) | Cod sursa (job #26481)
Cod sursa(job #26481)
var f:text;
a:array[1..200000] of integer;
max,cmax,s,cs,l,cl,n,i,j:longint;
begin
assign(f,'buline.in');
reset(f);
readln(f,n);
for i:=1 to n do begin
read(f,a[i],j);
if j=0 then a[i]:=-a[i];
end;
close(f);
max:=a[1];
s:=1;
l:=1;
cmax:=max;
cs:=s;
cl:=l;
i:=2;
while i<>s do
begin
if cmax<0 then
begin
cmax:=a[i];
cs:=i;
cl:=1;
end
else begin
cmax:=cmax+a[i];
inc(cl);
end;
if (cmax>max) or
((cmax=max) and (s>cs)) or
((cmax=max) and (s=cs) and (cl<l)) then
begin
max:=cmax;
s:=cs;
l:=cl;
end;
inc(i);
if i>n then i:=1;
end;
assign(f,'buline.out');
rewrite(f);
writeln(f,max,' ',s,' ',l);
close(f);
end.