求助!!
  • 板块学术版
  • 楼主Vizzi_02
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/7/1 18:46
  • 上次更新2023/11/4 20:27:50
查看原帖
求助!!
341396
Vizzi_02楼主2021/7/1 18:46

问题描述

  给定一个5*5的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。   鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。   例如:在下面的例子中(第4行第1列的元素就是鞍点,值为8 )。

  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

输入格式

  输入包含一个5行5列的矩阵 输出格式   如果存在鞍点,输出鞍点所在的行、列及其值,如果不存在,输出"not found"

样例输入

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

样例输出

4 1 8

#include <bits/stdc++.h>
using namespace std;
int a[10001][10001];
int maxn[10001];
int minn[10001];
int main()
{
    memset(minn,9999999,sizeof(minn));
    for(int i = 1;i <= 5;i++)
    {
        for(int j = 1;j <= 5;j++)
        {
            cin >> a[i][j];
            if(a[i][j] > maxn[i])
            {
                maxn[i] = a[i][j];
            }
            if(a[i][j] < minn[j])
            {
                minn[j] = a[i][j];
            }
        }
    }
    for(int i = 1;i <= 5;i++)
    {
        for(int j = 1;j <= 5;j++)
        {
            if((a[i][j] == maxn[i]) && (a[i][j] == minn[j]))
            {
                cout << i << " " << j << " " << a[i][j];
                return 0;
            }
        }
    }
    cout << "not found";
    return 0;
}

88分,求问哪里错了

2021/7/1 18:46
加载中...