📄 1176 免费馅饼.cpp
字号:
/*
1176 免费馅饼
Time Limit : 1000 ms Memory Limit : 32768 K Output Limit : 5120 K
GUN C++
*/
#include <iostream>
#include <cstdio>
#include <string>
using namespace std;
const int Max=100001;
int loc[Max][11];
inline int max(int x,int y,int z)
{
x= x>y ? x: y;
x= x>z ? x: z;
return x;
}
int main()
{
int t,x,n,i,j,k,maxt;
while(scanf("%d",&n)==1 && n!=0)
{
maxt=0;
memset(loc,0,sizeof(loc));
for(i=1;i<=n;i++)
{
scanf("%d %d",&x,&t);
loc[t][x]++;
if(t>maxt)
maxt=t;
}
for(i = maxt - 1; i >= 0; i--)
for(j = 0; j < 11; j++)
{
switch (j)
{
case 0: loc[i][j] += (loc[i + 1][0] > loc[i + 1][1]?loc[i + 1][0]:loc[i + 1][1]);break;
case 10:loc[i][j] += (loc[i + 1][10] > loc[i + 1][9]?loc[i + 1][10]:loc[i + 1][9]);break;
default:loc[i][j] += max(loc[i+1][j-1] ,loc[i+1][j] ,loc[i+1][j+1]);break;
}
}
printf("%d\n",loc[0][5]);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -