/LIXI - Lì xì

<Problem>

http://ntucoder.net/Problem/Details/2252
              Uses Crt;
        Var  n,i,j,k:longint; s,t:int64; a,b:array[1..1000000] of longint;
        Procedure H(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:=b[(l+r) div 2];
            repeat
             while b[i]>x do inc(i); while b[j]<x do dec(j);
             if i<=j then begin H(a[i],a[j]); H(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
                read(a[i],b[i]);
            end;
            sort(1,n);
            for i:=1 to n do
             if b[i]=0 then break;
            for j:=i to n-1 do
             for k:=j+1 to n do
              if a[j]<a[k] then H(a[j],a[k]);
            t:=1; s:=0;
            for i:=1 to n do
             if (t>0) then
              begin
                  s:=s+a[i];
                  t:=t-1+b[i]; (*b[i] co the bang 0*) 
              end;
            writeln(s);
            readln;
        
        
        End.