做过的题Σ( ° △ °|||)︴

#include <stdio.h>
#include <iostream>
#include <string.h>

using namespace std;
typedef long long ll;

const int N=1e5+3;
int dp[100005][20];

int main(void){
    int n;
    while(cin>>n){
        if(n==0)    return 0;
        memset(dp,0,sizeof(dp));
        int tmax=-1;
        for(int i=1;i<=n;i++){
            int x,t;
            scanf("%d%d",&x,&t);
            tmax=max(tmax,t);
            dp[t][x]++;
        }
        //cout <<"TMAX=" << tmax << endl;
        for(int i=tmax-1;i>=0;i--){
            for(int j=0;j<=11;j++){
                if(j==0)    dp[i][j]+=max(dp[i+1][j],dp[i+1][j+1]);
                else if(j==11)  dp[i][j]+=max(dp[i+1][j],dp[i+1][j-1]);
                else    dp[i][j]+=max(dp[i+1][j],max(dp[i+1][j-1],dp[i+1][j+1]));
            }
        }
        /*for(int i=0;i<=tmax;i++){
            for(int j=1;j<=11;j++){
                printf("%d ",dp[i][j]);
            }
            puts("");
        }*/
        cout << dp[0][5] << endl;
    }
    return 0;
}