/LUDI - Lưu diễn

<Problem>

http://ntucoder.net/Problem/Details/53
              Uses Crt;
        Var a,b,f:array[0..100000] of longint;
                n,i,j,max,kq:longint;
        Procedure Hoanvi(var a,b:longint); var tg:longint; begin tg:=a; a:=b; b:=tg; end;
        Procedure Sort(l,r:longint);
        var i,j,x:longint;
        begin
            i:=l; j:=r; x:=a[(l+r) div 2];
            repeat
                while x>a[i] do inc(i); while x<a[j] do dec(j);
                if i<=j then begin hoanvi(a[i],a[j]); hoanvi(b[i],b[j]); inc(i); dec(j); end;
            until i>j;
            if l<j then sort(l,j); if i<r then sort(i,r);
        end;
        Begin
            readln(n);
            for i:=1 to n do
            begin
                readln(a[i],b[i]);
            end; sort(1,n);   //writeln('a');
        
            f[1]:=1; kq:=-maxlongint;
            for i:=2 to n do
            begin
             max:=0;
             for j:=i-1 downto 1 do
               if (a[i]>b[j]) and (f[j]>max) then max:=f[j];
             f[i]:=max+1;
             if kq<max+1 then kq:=max+1;
            end;
            //for i:=1 to n do write(f[i],' ');
            writeln(kq);
            readln;
        End.