var b,e:array[1..1000]of longint;
i,j,n,ans:longint;
begin
writeln(’llove849’);
end.
状态: Unaccepted
测评机: Xeost[5]
得分: 0分
提交日期: 2009-4-25 16:50:00
有效耗时: 该状态没有记录
测试结果1: 选手程序无输出
测试结果2: 选手程序无输出
测试结果3: 选手程序无输出
测试结果4: 选手程序无输出
测试结果5: 选手程序无输出
测试结果6: 选手程序无输出
测试结果7: 选手程序无输出
测试结果8: 选手程序无输出
测试结果9: 选手程序无输出
测试结果10: 选手程序无输出
const M=100005;
var
a,b,srt,arr,brr:array [0..M] of integer;
function cmp(x,y:integer):boolean;
begin
cmp=(a[x]<a[y] or a[x]=a[y] and b[x]<b[y]);
end;
function LIS(n:integer):integer;
var i,s,t,L,R,M,rt:integer;
begin
rt:=1;
if(n==0)
begin LIS=0; halt; end;
brr[1]:=arr[0];
for i:=1 to n-1 do
if(brr[rt]<arr[i])
brr[rc+1]=:arr[i];
else if(brr[1]>=arr[i])
brr[1]:=arr[i];
else
begin
L:=1;R:=rt;t:=0;
while(L<R)
begin
M:=(L+R) div 2;
if(brr[M]<arr[i])
begin
t:=M;
L:=M+1;
end
else
R:=M-1;
end
brr[t+1]:=arr[i];
end
LIS:= rt;
end
var
n,max,i,j,p,q,k:integer;
begin
readln(n);
for i:=0 to n-1 do
readln(a[i],b[i]);
for i:=0 to n-1 do
srt[i]:=i;
sort(srt,srt+n,cmp);//自己sort吧!
max:=0;
for j:=0 to n-1 do
begin
i=srt[j];
q=0;
k:=j+1;
while(k<n && a[srt[k]]<b[i])
if(b[srt[k]]>b[i])
arr[q++]:=b[srt[k]];
p:=LIS(q)+1;
if(max<p) max:=p;
end
writeln(max);
end.