//Bokan ga bokka--nn!!
//Daily Lunch Special Tanoshii !!
//これは、頭が悪く競プロが世界で一番できないHIR180が
//IOI2014日本代表になるまでのN日間の記録である。
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <cassert>
#include <string>
#include <algorithm>
#include <vector>
#include <queue>
#include <stack>
#include <functional>
#include <iostream>
#include <map>
#include <set>
using namespace std;
typedef pair<int,int> P;
typedef pair<int,P> P1;
typedef pair<P,P> P2;
typedef long long ll;
#define pu push
#define pb push_back
#define mp make_pair
#define eps 1e-7
#define INF 2000000000
#define f first
#define s second
#define rep(i,x) for(int i=0;i<x;i++)
P x[300005];int n;
bool ok(int num)
{
	priority_queue<int>que;
	ll sum=0;
	for(int i=0;i<n;i++)
	{
		int border=x[i].f;
		ll lim=1LL*border*num;
		que.push(x[i].s);
		sum+=x[i].s;
		while(sum>lim)
		{
			sum-=que.top(); que.pop();
		}
		if(que.size()>=num) return 1;
	}
	return 0;
}
int main()
{
	srand((unsigned int)time(NULL));
	scanf("%d",&n);
	for(int i=0,a,b;i<n;i++)
	{
		scanf("%d %d",&a,&b);
		x[i]=mp(b,a);
	}
	sort(x,x+n,greater<P>());
	int lb=0,ub=n+5;
	while(ub-lb>1)
	{
		int mid=(lb+ub)>>1;
		if(ok(mid)) lb=mid;
		else ub=mid;
	}
	printf("%d\n",lb);
}