Pagini recente » Cod sursa (job #136894) | Cod sursa (job #1014746) | Cod sursa (job #2625190) | Cod sursa (job #449474) | Cod sursa (job #692819)
Cod sursa(job #692819)
program subsir_maximal_dinamic;{de pe infoarena 40puncte}
type sume=array[1..6000000] of int64;
var
i,si,sj,min,pozi,j,nr,pozj,pozfi,pozfj,summax:longint;
n:longint;
f,g : text;
s:sume;
procedure dinamica;
var i:integer;
begin
assign(f,'ssm.in');
reset(f);
assign(g,'ssm.out');
rewrite(g);
readln(f,n);
read(f,nr);
s[1]:=nr;
summax:=-maxlongint;
min:=0;
for i:=2 to n do
begin
read(f,nr);
s[i]:=s[i-1] +nr;
if summax<s[i]-min then
begin
summax:=s[i]-min;
pozfj:=pozj+1;
pozfi:=i;
end;
if min>s[i] then
begin
min:=s[i];
pozj:=i;
end;
end;
write(g,summax,' ',pozfj,' ',pozfi);
close(f);
close(g);
end;
begin
dinamica;
end.