📄 1176.cpp
字号:
#include <iostream>
using namespace std;
int down[100001][11];
int masn[100001][11];
int main()
{
int i, n, x, t, tmax, result;
while (scanf("%d", &n) == 1 && n)
{
memset(down, 0, sizeof(down));
memset(masn, 0, sizeof(masn));
for (tmax = 0, i = 0; i < n; i++)
{
scanf("%d%d", &x, &t);
down[t][x]++;
if (t > tmax)
{
tmax = t;
}
}
result = 0;
for (x = 4; x <= 6; x++)
{
masn[1][x] = down[1][x];
if (masn[1][x] > result)
{
result = masn[1][x];
}
}
for (t = 2; t <= tmax; t++)
{
for (x = 0; x <= 10; x++)
{
int add;
if (x == 0)
{
add = masn[t - 1][x] > masn[t - 1][x + 1] ? masn[t - 1][x] : masn[t - 1][x + 1];
}
else if (x == 10)
{
add = masn[t - 1][x - 1] > masn[t - 1][x] ? masn[t - 1][x - 1] : masn[t - 1][x];
}
else
{
int mm = masn[t - 1][x - 1];
int bb = masn[t - 1][x] > masn[t - 1][x + 1] ? masn[t - 1][x] : masn[t - 1][x + 1];
add = mm > bb ? mm : bb;
}
masn[t][x] = add + down[t][x];
if (masn[t][x] > result)
{
result = masn[t][x];
}
}
}
printf("%d\n", result);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -