#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#define INF 0x7f7f7f7f
using namespace std;
struct Box
{
int a,A;
};
int dp[1005][1005];
int last[1005][1005];
Box p[1005];
int main()
{
int n;
while(scanf("%d",&n)&&n)
{
memset(dp,INF,sizeof(dp));
memset(last,-1,sizeof(last));
memset(p,-1,sizeof(p));
for(int i=n; i>0; --i) scanf("%d%d",&p[i].a,&p[i].A);
int ans=0;
for(int i=0; i<=n; ++i)
dp[i][0]=0;
for(int i=1; i<=n; ++i)
for(int j=1; j<=i; ++j)
{
if(p[i].A>=dp[i-1][j-1]&&i>last[i-1][j-1])
{
if(dp[i-1][j-1]+p[i].a<dp[i-1][j])
{
dp[i][j]=dp[i-1][j-1]+p[i].a;
last[i][j]=i;
}
else
{
dp[i][j]=dp[i-1][j];
last[i][j]=last[i-1][j];
}
}
else
{
dp[i][j]=dp[i-1][j];
last[i][j]=last[i-1][j];
}
if(dp[i][j]!=INF)
ans=max(ans,j);
}
printf("%d\n",ans);
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPiAgCiNpbmNsdWRlIDxjc3RkaW8+ICAKI2luY2x1ZGUgPGNzdHJpbmc+ICAKI2luY2x1ZGUgPGNtYXRoPiAgCiNpbmNsdWRlIDxhbGdvcml0aG0+ICAKI2RlZmluZSBJTkYgMHg3ZjdmN2Y3ZiAgCnVzaW5nIG5hbWVzcGFjZSBzdGQ7ICAKc3RydWN0IEJveCAgCnsgIAogICAgaW50IGEsQTsgIAp9OyAgCmludCBkcFsxMDA1XVsxMDA1XTsgIAppbnQgbGFzdFsxMDA1XVsxMDA1XTsgIApCb3ggcFsxMDA1XTsgIAppbnQgbWFpbigpICAKeyAgCiAgICBpbnQgbjsgIAogICAgd2hpbGUoc2NhbmYoIiVkIiwmbikmJm4pICAKICAgIHsgIAogICAgICAgIG1lbXNldChkcCxJTkYsc2l6ZW9mKGRwKSk7ICAKICAgICAgICBtZW1zZXQobGFzdCwtMSxzaXplb2YobGFzdCkpOyAgCiAgICAgICAgbWVtc2V0KHAsLTEsc2l6ZW9mKHApKTsgIAogICAgICAgIGZvcihpbnQgaT1uOyBpPjA7IC0taSkgc2NhbmYoIiVkJWQiLCZwW2ldLmEsJnBbaV0uQSk7ICAKICAgICAgICBpbnQgYW5zPTA7ICAKICAgICAgICBmb3IoaW50IGk9MDsgaTw9bjsgKytpKSAgCiAgICAgICAgICAgIGRwW2ldWzBdPTA7ICAKICAgICAgICBmb3IoaW50IGk9MTsgaTw9bjsgKytpKSAgCiAgICAgICAgICAgIGZvcihpbnQgaj0xOyBqPD1pOyArK2opICAKICAgICAgICAgICAgeyAgCiAgICAgICAgICAgICAgICBpZihwW2ldLkE+PWRwW2ktMV1bai0xXSYmaT5sYXN0W2ktMV1bai0xXSkgIAogICAgICAgICAgICAgICAgeyAgCiAgICAgICAgICAgICAgICAgICAgaWYoZHBbaS0xXVtqLTFdK3BbaV0uYTxkcFtpLTFdW2pdKSAgCiAgICAgICAgICAgICAgICAgICAgeyAgCiAgICAgICAgICAgICAgICAgICAgICAgIGRwW2ldW2pdPWRwW2ktMV1bai0xXStwW2ldLmE7ICAKICAgICAgICAgICAgICAgICAgICAgICAgbGFzdFtpXVtqXT1pOyAgCiAgICAgICAgICAgICAgICAgICAgfSAgCiAgICAgICAgICAgICAgICAgICAgZWxzZSAgCiAgICAgICAgICAgICAgICAgICAgeyAgCiAgICAgICAgICAgICAgICAgICAgICAgIGRwW2ldW2pdPWRwW2ktMV1bal07ICAKICAgICAgICAgICAgICAgICAgICAgICAgbGFzdFtpXVtqXT1sYXN0W2ktMV1bal07ICAKICAgICAgICAgICAgICAgICAgICB9ICAKICAgICAgICAgICAgICAgIH0gIAogICAgICAgICAgICAgICAgZWxzZSAgCiAgICAgICAgICAgICAgICB7ICAKICAgICAgICAgICAgICAgICAgICBkcFtpXVtqXT1kcFtpLTFdW2pdOyAgCiAgICAgICAgICAgICAgICAgICAgbGFzdFtpXVtqXT1sYXN0W2ktMV1bal07ICAKICAgICAgICAgICAgICAgIH0gIAogICAgICAgICAgICAgICAgaWYoZHBbaV1bal0hPUlORikgIAogICAgICAgICAgICAgICAgICAgIGFucz1tYXgoYW5zLGopOyAgCiAgICAgICAgICAgIH0gIAogICAgICAgIHByaW50ZigiJWRcbiIsYW5zKTsgIAogICAgfSAgCiAgICByZXR1cm4gMDsgIAp9ICA=