#include <bits/stdc++.h> using namespace std; int main() { int n, m; cin >> n >> m; // 输入二维数组的行数和列数 vector<vector<int>> arr(n, vector<int>(m)); // 创建二维数组 for (int i = 0; i < n; ++i) { for (int j = 0; j < m; ++j) { cin >> arr[i][j]; // 输入二维数组的元素 } } for (int i = 1; i < n - 1; ++i) { // 遍历除去第一行和最后一行的数组元素 for (int j = 1; j < m - 1; ++j) { // 遍历除去第一列和最后一列的数组元素 if (arr[i][j] > arr[i - 1][j] && arr[i][j] > arr[i + 1][j] && arr[i][j] > arr[i][j - 1] && arr[i][j] > arr[i][j + 1]) { // 如果当前元素大于其上下左右的元素,则为靶心数 cout << arr[i][j] << endl; // 输出靶心数 } } } return 0; } /************************************************************** Problem: 1384 User: wangyiyang Language: C++ Result: Accepted Time:9 ms Memory:2076 kb ****************************************************************/