zoukankan      html  css  js  c++  java
  • 1489 数据结构:矩阵鞍点

    即使AC,但此算法仍有不足之处,不能正确处理行最小、列最大+相等的矩阵情况。

    2 2
       2 3

    应为A[1][1]、A[2][1]

     1 #include <iostream>
     2 #define MAX_SIZE 100+1
     3 using namespace std;
     4 int array[MAX_SIZE][MAX_SIZE];
     5 void creatMatrix()
     6 {
     7     int m,n,iMax,jMax,count=0;//当前列中最大元素的行下标、列下标
     8     scanf("%d%d",&m,&n);
     9     int minRow[m],maxCol[n];
    10     for (int i = 1; i <= m; ++i)
    11     {
    12         scanf("%d",&array[i][1]);
    13         minRow[i]=array[i][1];
    14         for (int j = 2; j <= n; ++j)
    15         {
    16             scanf("%d",&array[i][j]);
    17             if(array[i][j]<minRow[i]) minRow[i]=array[i][j];
    18         }
    19     }
    20     for (int j = 1; j <= n; ++j)//遍历每一列
    21     {
    22         maxCol[j]=array[1][j]; iMax=1,jMax=j;
    23         for (int i = 1; i <= m; ++i)
    24             if(maxCol[j]<array[i][j])
    25             {
    26                 maxCol[i]=array[i][j];
    27                 iMax=i; jMax=j;
    28             }
    29         if(array[iMax][jMax]==minRow[iMax])
    30         {
    31             count==0 ? printf("A[%d][%d]",iMax,jMax ):printf(" A[%d][%d]",iMax,jMax );
    32             count++;
    33         }
    34     }
    35     if(count==0) printf("NO.");
    36     printf("
    ");
    37 }
    38 int main(int argc, char const *argv[])
    39 {
    40     #ifndef _OJ_  //ONLINE_JUDGE
    41     freopen("input.txt", "r", stdin);
    42     #endif
    43     int num;
    44     scanf("%d",&num);
    45     while(num--)
    46     {
    47         creatMatrix();
    48         if(num>0) printf("
    ");
    49     }
    50     return 0;
    51 }
  • 相关阅读:
    OC
    OC
    核心动画
    核心动画
    核心动画
    数据存储1
    plsql语句基础
    Oracle3连接&子查询&联合查询&分析函数
    oracle2约束添加&表复制&拼接
    Oracle表空间创建及表创建
  • 原文地址:https://www.cnblogs.com/swanGooseMan/p/4290905.html
Copyright © 2011-2022 走看看