📄 2119.cpp
字号:
/* This Code is Submitted by wywcgs for Problem 2119 on 2005-10-13 at 23:16:21 */
#include <cstdio>
#include <cstring>
#define MAX 256
void isSafe(int, int, int, int);
bool safe[MAX][MAX];
int h[MAX][MAX];
int main()
{
int H, W, n;
int i, j;
while(scanf("%d %d", &H, &W) == 2) {
for(i = 0; i < H; i++) {
for(j = 0; j < W; j++) {
scanf("%d", &h[i][j]);
}
}
n = 0;
H--;
W--;
memset(safe, true, sizeof(safe));
for(i = 1; i < H ; i++) {
for(j = 1; j < W ; j++) {
if(safe[i][j]) {
isSafe(i, j, i-1, j-1);
isSafe(i, j, i-1, j);
isSafe(i, j, i-1, j+1);
isSafe(i, j, i, j-1);
isSafe(i, j, i, j+1);
isSafe(i, j, i+1, j-1);
isSafe(i, j, i+1, j);
isSafe(i, j, i+1, j+1);
if(safe[i][j]) {
n++;
}
}
}
}
printf("%d\n", n);
}
return 0;
}
void isSafe(int ra, int la, int rb, int lb)
{
if(h[ra][la] < h[rb][lb]) {
safe[rb][lb] = false;
} else if(h[ra][la] > h[rb][lb]) {
safe[ra][la] = false;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -