记录编号 1779 评测结果 AAAAAAAAAA
题目名称 渡轮问题 最终得分 100
用户昵称 Gravatarbly1991 是否通过 通过
代码语言 Pascal 运行时间 10.000 s
提交时间 2008-09-08 19:27:06 内存使用 0.00 MiB
显示代码纯文本
program bly(input,output);
var
  a:array[1..10000,1..3] of integer;
  f1,f2:text;
  n,i,j,l,min0:integer;
  p:boolean;
  max,max0,x:integer;
begin
  assign(f1,'maxxl.in');
  reset(f1);
  readln(f1,n);
  for i:=1 to n do begin
    readln(f1,a[i,1]);
    a[i,2]:=1;
    a[i,3]:=0;
  end;
  close(f1);

  for i:=n-1 downto 1 do begin
    for j:=i+1 to n do begin
      if (a[j,2]>l)and(a[j,1]-a[i,1]>=0) then begin
        l:=a[j,2];
        min0:=j;
      end;
    end;
    if l>0 then begin
      a[i,2]:=l+1;
      a[i,3]:=min0;
    end;
    l:=0;
  end;

  max:=0;
  for i:=1 to n do begin
    if max<a[i,2] then begin
      max:=a[i,2];
      max0:=i;
    end;
  end;

  assign(f2,'maxxl.out');
  rewrite(f2);
  writeln(f2,max); write(f2,a[max0,1],' ');
  x:=a[max0,3];
  for i:=1 to max-1 do begin
    write(f2,a[x,1],' ');
    x:=a[x,3];
  end;
  close(f2);
end.