1 条题解
-
0
Pascal :
var i,j,k,max,n:longint;a,b,f:array[0..10000] of longint; ok:array[0..50000] of boolean; begin readln(n); for i:=1 to n do read(a[i]); b[1]:=1; f[1]:=1; for i:=2 to n+1 do begin max:=0; f[i]:=1; for j:=i-1 downto 1 do if (a[i]<a[j]) then if b[j]>max then begin max:=b[j]; fillchar(ok,sizeof(ok),#1); ok[a[j]]:=false; f[i]:=f[j]; end else if(b[j]=max) and (ok[a[j]]) then begin ok[a[j]]:=false; f[i]:=f[i]+f[j]; end; b[i]:=max+1; end; writeln(b[n+1]-1,' ',f[n+1]); end.
- 1
信息
- ID
- 826
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者