Cod sursa(job #718469)

Utilizator Adr3nal1nStefan Damian Adr3nal1n Data 20 martie 2012 20:27:30
Problema Subsir crescator maximal Scor 10
Compilator fpc Status done
Runda Arhiva educationala Marime 1.51 kb
var i,j,poz,n,max:integer;
        t,l:array[1..100000] of integer;
        procedure citire;
        var f:text;
        begin
        assign(f,'scmax.in');
        reset(f);
                readln(f,n);
                for i:=1 to n do
                read(f,t[i])
        end;
                procedure sir;
                begin
                l[n]:=1;
                        for i:=n-1 downto 1 do
                        begin
                        max:=0;
                        for j:=i+1 to n do
                        if (t[i]<t[j]) and (l[j]>max) then
                        begin
                        max:=l[j];
                        l[i]:=max+1;
                        end;
                end;
                max:=0;
                for i:=1 to n do
                if l[i]>max then
                begin
                max:=l[i];
                poz:=i;
                end;
        end;
                procedure scrie;
                var f:text;
                begin
                assign(f,'scmax.out');
                rewrite(f);
                writeln(f,max);
                write(f,t[poz],' ');
                        for i:=poz to n do
                        if (t[i]>t[poz]) and (l[i]=max-1)
                        then begin
                        write(f,t[i],' ');
                        dec(max);
                        end;
                        close(f);
                end;
begin
        citire;
        sir;
        scrie;
readln
end.