Cod sursa(job #716809)
Utilizator | Seicean Andrei andreiseicean | Data | 19 martie 2012 11:59:43 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 90 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.58 kb |
var f,g:text;
a,pd:array[0..6000000]of longint;
xx,yy,x,n,i,s,ss,y:longint;
begin
assign(f,'ssm.in');reset(f);assign(g,'ssm.out');rewrite(g);
read(f,n); s:=-maxlongint;
for i:=1 to n do
begin
read(f,a[i]);
if pd[i-1]+a[i]>a[i] then begin
ss:=pd[i-1]+a[i];
yy:=i; end
else begin
ss:=a[i]; xx:=i; yy:=y; end;
if ss>s then begin s:=ss; x:=xx; y:=yy; end;
pd[i]:=ss;
end;
write(g,s,' ',x,' ',y);
close(f);close(g);
end.