记录编号 8450 评测结果 AAAAAAAAAA
题目名称 渡轮问题 最终得分 100
用户昵称 Gravatar苏轼 是否通过 通过
代码语言 Pascal 运行时间 0.648 s
提交时间 2008-11-14 16:19:34 内存使用 0.23 MiB
显示代码纯文本
program cch(input,output);
var
 n,i,max,j,k:longint;
 a:array[1..10000,1..3] of longint;
begin
 assign(input,'maxxl.in');
 assign(output,'maxxl.out');
 reset(input);
 rewrite(output);
 readln(n);
 for i:=1 to n do readln(a[i,1]);
 for i:=1 to n do a[i,2]:=1;
 for i:=1 to n do a[i,3]:=0;
 for i:=n-1 downto 1 do
  begin
   max:=0; k:=0;
   for j:=i+1 to n do
    if (a[i,1]<=a[j,1])and(max<a[j,2]) then
     begin
      max:=a[j,2]; k:=j;
     end;
   a[i,2]:=max+1; a[i,3]:=k;
  end;
 max:=0;
 for i:=1 to n do
  if max<a[i,2] then
   begin
    max:=a[i,2]; k:=i;
   end;
 writeln(max);
 i:=k;
 while i<>0 do
  begin
   write(a[i,1],' ');
   i:=a[i,3];
  end;
 close(input);
 close(output);
end.