题目描述
如果矩阵 AAA 中存在这样的一个元素 AijA_{ij}Aij 满足条件 AijA_{ij}Aij 是第 iii 行中值最小的元素,且又是第 jjj 列中值最大的元素,则称之为该矩阵的一个马鞍点。请编程计算出 m×nm \times nm×n 的矩阵 AAA的所有马鞍点。
输入
输入 m,nm, nm,n;
然后输入数组中的每个元素。
输出
输出 m×nm \times nm×n 的矩阵 AAA 的所有马鞍点。
输入输出样例
样例输入 #1
3 3
1 7 3
5 4 6
17 18 9
样例输出 #1
9
【代码】
#include<stdio.h>
int main()
{
int m,n;
scanf("%d%d",&m,&n);
int a[100][100],i,j,b,c,min,max;
for(i=1;i<=m;i++)
{
for(j=1;j<=n;j++)
{
scanf("%d",&a[i][j]);
}
}
for(i=1;i<=m;i++)
{
min=a[i][1];
b=1;
for(j=2;j<=n;j++)
{
if(a[i][j]<min)
{
min=a[i][j];
b=j;
}
max=a[i][b];
for(c=1;c<=m;c++)
{
if(a[c][b]>max)
max=a[c][b];
}
}
if(max==min)
printf("%d",max);
}
return 0;
}