Mai intai trebuie sa te autentifici.
Cod sursa(job #298653)
| Utilizator | Data | 6 aprilie 2009 11:50:32 | |
|---|---|---|---|
| Problema | Subsir crescator maximal | Scor | 10 |
| Compilator | fpc | Status | done |
| Runda | Arhiva educationala | Marime | 0.61 kb |
var f,g:text;
n,i,j,max,poz:longint;
a,c:array[0..100001] of longint;
begin
assign(f,'scmax.in');reset(f);
assign(g,'scmax.out');rewrite(g);
read(f,n);
for i:=1 to n do read(f,a[i]);
for i:=1 to n-1 do c[i]:=0;
c[n]:=1;
for i:=n-1 downto 1 do
for j:=i+1 to n do
if a[i]<a[j] then
if c[i]<c[j] then begin
c[i]:=c[j]+1;
if max<c[i] then begin
max:=c[i];
poz:=i;
end;
end;
writeln(g,max);
write(g,a[poz],' ');
max:=max-1;
for i:=poz+1 to n do
if (c[i]=max)and(a[poz]<a[i]) then begin
write(g,a[i],' ');
poz:=i;
max:=max-1;
end;
close(f);
close(g);
end.
