<a target=_blank href="http://acm.hdu.edu.cn/showproblem.php?pid=1176">点击打开链接</a>
#include <stdio.h>
#include <cstring>
#include <iostream>
#include <cmath>
using namespace std;
const int maxn = 100000;
int dp[maxn+5][12];
int main()
{
int n,t,x;
while(scanf("%d",&n) && n)
{
memset(dp,0,sizeof(dp));
int maxt = 0;
for(int i=1;i<=n;i++)
{
scanf("%d%d",&x,&t);
dp[t][x+1]++;
maxt = max(maxt,t);
}
for(int i=maxt-1;i>=0;i--)
{
for(int j=1;j<=11;j++)
dp[i][j] = max(dp[i+1][j-1],max(dp[i+1][j],dp[i+1][j+1])) + dp[i][j];
}
printf("%d\n",dp[0][6]);
}
return 0;
}