Cod sursa(job #559720)
Utilizator | Data | 18 martie 2011 00:05:13 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 65 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
program sub_max;
const fi='ssm.in';
fo='ssm.out';
var a,idx,beg,en,n,i,sum:longint;
f,g:text;
s:array[1..7000005] of integer;
begin
assign(f,fi);
reset(f);
assign(g,fo);
rewrite(g);
read(f,n);
sum:=-maxint;
for i:=1 to n do
read(f,s[i]);
for i:=1 to n do
begin
if sum<0 then
begin
sum:=s[i];
idx:=i;
end
else
begin
sum:=sum+s[i];
if a<sum then
begin
a:=sum;
beg:=idx;
en:=i;
end;
end;
end;
write(g,a,' ',beg,' ',en);
close(f);
close(g);
end.