ac1108.pas
来自「这是在网络上搜集到的在东京大学的ACM上面解决的一些题目的源码」· PAS 代码 · 共 32 行
PAS
32 行
program tju1108;
const
maxn=100000;
var
a,b:array[0..maxn+1]of longint;
n,i,x,ans,l,r:longint;
begin
repeat
read(n);
for i:=1 to n do begin
read(x);b[x]:=i;
end;
for i:=1 to n do begin
read(x);a[i]:=b[x];
end;
ans:=1;b[1]:=a[1];b[2]:=maxlongint;
for i:=2 to n do begin
l:=1;r:=ans+1;
repeat
x:=(l+r) shr 1;
if a[i]<b[x] then
if a[i]>b[x-1] then break else r:=x-1
else
l:=x+1;
until false;
b[x]:=a[i];if x>ans then begin inc(ans);b[x+1]:=maxlongint;end;
end;
writeln(ans);
until seekeof;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?