![]()
1 #include<stdio.h>
2
3 int main(void)
4 {
5 int n;
6 int a[6][6];
7 int row_max[6]; //每 一行的最大数
8 int col_min[6]; //每一列的最大数
9
10 scanf_s("%d", &n);
11
12 for (int i = 0; i < n; i++)
13 {
14 for (int j = 0; j < n; j++)
15 {
16 scanf_s("%d", &a[i][j]);
17 }
18 }
19
20 /*找出每一行的最大值*/
21 for (int i = 0; i < n; i++)
22 {
23 int row_max_index = 0;
24 for (int j = 1; j < n; j++)
25 {
26 if (a[i][row_max_index] < a[i][j])
27 {
28 row_max_index = j;
29 }
30 }
31
32 row_max[i] = a[i][row_max_index];
33 }
34
35 /*找出每一列的最小值*/
36 for (int i = 0; i < n; i++)
37 {
38 int col_min_index = 0;
39 for (int j = 1; j < n; j++)
40 {
41 if (a[j][i] < a[col_min_index][i])
42 {
43 col_min_index = j;
44 }
45 }
46
47 col_min[i] = a[col_min_index][i];
48 }
49
50 int count = 0; //统计鞍点的个数
51 for (int i = 0; i < n; i++)
52 {
53 for (int j = 0; j < n; j++)
54 {
55 if (a[i][j]==row_max[i]&&a[i][j]==col_min[j])
56 {
57 printf("%d %d\n", i, j);
58 count++;
59 }
60 }
61 }
62
63 if (count == 0)
64 {
65 printf("NONE\n");
66 }
67
68 return 0;
69 }