1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
#include <iostream> #include <algorithm> #include <stdio.h> #define INF 0x3f3f3f3f const int Maxn=100005; using namespace std; int f[11][Maxn],n,x,t; int () { while(~scanf("%d",&n) && n) { int Mx=-1; memset(f,0,sizeof(f)); for(int i=1;i<=n;i++){ scanf("%d%d",&x,&t); f[x][t]++; if(t>Mx) Mx=t; } for(int i=Mx-1;i>=0;i--) { f[0][i]+=max(f[0][i+1],f[1][i+1]); f[10][i]+=max(f[10][i+1],f[9][i+1]); for(int j=1;j<=9;j++) f[j][i]+=max(f[j-1][i+1],max(f[j][i+1],f[j+1][i+1])); } printf("%dn",f[5][0]); } return 0; }
|
近期评论