Cod sursa(job #278898)
Utilizator | Haller Emanuela cheery_g1rl | Data | 12 martie 2009 16:33:32 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.66 kb |
var x,n,s,best,i,ii,ind,sf:int64;
begin
assign(input,'ssm.in'); reset(input);
assign(output,'ssm.out'); rewrite(output);
readln(n);
s:=-1; best:=-9223372036854775808;
for i:=1 to n do
begin
read(x);
if s<0 then
begin
s:=x;
ii:=i;
end
else s:=s+x;
if best<s then
begin
best:=s;ind:=ii; sf:=i;
end
else if (best=s)and(ind>ii) then
begin
ind:=ii; sf:=i;
end
else if (best=s)and(ind=ii)and(i<sf) then sf:=i;
end;
writeln(best,' ',ind,' ',sf);
close(input); close(output);
end.