问题标题: 酷町堂:1706   矩阵鞍点

0
0
已解决
范皓翔
范皓翔
初级光能
初级光能

1706矩阵鞍点

1706   矩阵鞍点

题目描述 Description

给定一个 5 * 5 的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。 鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。

要求输出该矩阵的鞍点的位置以及鞍点的值。

输入描述 Input Description

一个5 * 5 的矩阵

输出描述 Output Description

如果找到了鞍点则输出:鞍点在第几行 鞍点在第几列 鞍点的值

如果没有找到鞍点则输出:not found

样例输入 Sample Input

 

11 3 5 6 9
12 4 7 8 10
10 5 6 9 11
8 6 4 7 2
15 10 11 20 25

样例输出 Sample Output

 

4 1 8

 


0
0
0
0
杜智宸
杜智宸
中级光能
中级光能
  • for(int i=1;i<=5;i++){
  • maxn=0;
  • for(int j=1;j<=5;j++){
  • if(a[i][j]>=maxn){
  • t1=i;
  • t2=j;
  • maxn=a[i][j];
  • }
  • }
  • minn=999999;
  • for(int k=1;k<=5;k++){
  • if(a[k][t2]<minn){
  • l=k;
  • minn=a[k][t2];
  • }
  • }
  • if(maxn==minn&&l==i){
  • f=1;
  • cout<<t1<<" "<<t2<<" "<<maxn;
  • break;
  • }
  • }
  • if(f==0)
  • cout<<"not found";

核心,定义和输入自己写

0
胡钰妍
胡钰妍
资深光能
资深光能

循环(i=1;i<=5;i++)

{

Max=a[i][0];

循环(j=1;j<=5;j++)

如果(a[i][j]>=Max)

{

t1=i;

t2=j;

Max=a[i][j];

}

Min=Max;

循环(int k=1;k<=5;k++)

如果(a[k][t2]<Min)

Min=a[k][t2];

if(Max==Min)

{

f=1;

输出<<t1<<" "<<t2<<" "<<Max;

跳出循环;

}

}

若果(f等于0)

输出<<"not found";

 

望采纳

我要回答