Cod sursa(job #669099)

Utilizator mada0222Tomus Madalina mada0222 Data 26 ianuarie 2012 09:31:11
Problema Subsecventa de suma maxima Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.73 kb
program sss;
var f,g:text;
    n,i,min,max,poz1,poz2,j:longint;
    a:array[0..6000000] of longint;
    s:array[0..6000000] of longint;
begin
assign(f,'ssm.in'); reset(f);
assign(g,'ssm.out'); rewrite(g);
  readln(f,n);
    for i:=1 to n do
      begin
        read(f,a[i]);
      end;
    for i:=1 to n do
      s[i]:=s[i-1]+a[i];
    min:=a[1];
    max:=-maxlongint;
    j:=1;
    for i:=2 to n do
      begin
        if s[i]-min>max then
          begin
            max:=s[i]-min;
            poz2:=i;
            poz1:=j+1;
          end;
        if min>s[i] then
          begin
          min:=s[i];
          j:=i;
          end ;
      end;
    writeln(g,max,' ',poz1,' ',poz2);
close(f);
close(g);
end.