#include <bits/stdc++.h>
using namespace std;
struct st {
  int a, b;
  bool operator()(st q, st w) {
    if (q.b == w.b) {
      return q.a > w.a;
    }
    return q.b > w.b;
  }
};
int main() {
  int n;
  cin >> n;
  vector<st> s(n);
  for (int i = 0; i < n; ++i) {
    cin >> s[i].a >> s[i].b;
  }
  sort(s.begin(), s.end(), st());
  int c = 1;
  long long sum = 0;
  for (int i = 0; i < n; ++i) {
    if (c == 0) {
      break;
    }
    sum += s[0].a;
    --c;
    c += s[0].b;
    s.erase(s.begin(), s.begin() + 1);
  }
  cout << sum << endl;
  return 0;
}
