Pagini recente » Cod sursa (job #3141799) | Cod sursa (job #1823486) | Cod sursa (job #1949934) | Cod sursa (job #3148209) | Cod sursa (job #708853)
Cod sursa(job #708853)
Program p1;
var fi,fo : text; i,n,j1,j2,ck : longint;
a,c : array[0..6000000] of longint; maxim : longint;
Function max(a,b:longint):longint;
begin
if a>b then max:=a
else max:=b;
end;
begin
assign(fi,'ssm.in'); reset(fi); readln(fi,n);
assign(fo,'ssm.out'); rewrite(fo);
for i:=1 to n do read(fi,a[i]);
c[1]:=a[1];
for i:=2 to n do c[i]:=max(c[i-1]+a[i],a[i]);
maxim:=c[1];
for i:=n downto 1 do if c[i]>maxim then begin
maxim:=c[i];
j1:=i;
end;
j2:=j1; ck:=0;
while ck<maxim do begin
ck:=ck+a[j2];
j2:=j2-1;
end;
if a[j2]>0 then j2:=j2+1;
write(fo,maxim,' ',j2,' ',j1);
close(fi); close(fo);
end.