说明
James同学发现了在二维数组中有这样一类数,这个数正好比自己上下左右四个方向的数都大(由于需要比四个方向的数都大,因此这个数不可能在第一行、最后一行、第一列、最后一列),James把它们称为靶心数,请你编程求出一个二维数组的靶心数有哪些,输出他们。
输入格式
第一行是两个整数n和m(n和m都是4~100之间的整数),代表接下来的二维数组有n行m列。
接下来n行,每行有m个整数。
输出格式
请按照输入的顺序输出满足条件的靶心数,每行1个。
样例
輸入資料 1
4 4
1 2 3 4
5 6 5 8
9 1 11 10
13 4 5 16
輸出資料 1
6
11
参考程序
#include<bits/stdc++.h>
using namespace std;
int a[105][105];
int main(){
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cin>>a[i][j];
}
}
for(int i=2;i<n;i++)
{
for(int j=2;j<m;j++)
{
if(a[i][j]>a[i+1][j]&&a[i][j]>a[i-1][j]&&a[i][j]>a[i][j+1]&&a[i][j]>a[i][j-1])
{
cout<<a[i][j]<<endl;
}
}
}
return 0;
}