Cod sursa(job #503300)

Utilizator SpiderManSimoiu Robert SpiderMan Data 22 noiembrie 2010 13:45:17
Problema Subsecventa de suma maxima Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.97 kb
program secv ;

const FIN = 'ssm.in' ;
      FOU = 'ssm.out' ;
      oo  = 2147483647 ;

var i, N, rez, min, poz, st, dr, y, x : longint ;
    buf : array[ 1 .. 1 shl 30 ] of char ;

    begin
        assign ( input, FIN ) ; reset ( input ) ;
        settextbuf ( input, buf ) ;

        readln ( N ) ;

        rez := -oo ;

        for i := 1 to N do
            begin
                read ( y ) ; inc ( y, x ) ;
                if ( rez < y - min ) then
                    begin
                        rez := y - min ;
                        st := poz + 1 ; dr := i ;
                    end ;
                if ( y < min ) then
                    begin
                        min := y ;
                        poz := i ;
                    end ;
                x := y ;
            end ;

        assign ( output, FOU ) ; rewrite ( output ) ;
        writeln ( rez, ' ', st, ' ', dr ) ;
        close ( input ) ; close ( output ) ;
    end .