紧急求助。
查看原帖
紧急求助。
919235
customr楼主2023/1/14 14:07
#include <iostream>
#include<bits/stdc++.h>
using namespace std;

int main() {
    int imax,jmin;
    int i,j,x;
    
    
    int minj;

    int a[10][10];
    int b[10][10];

     for(i=1;i<=5;i++){
         for(j=1;j<=5;j++){
            b[i][j]=0x3f3f3f;

         }
    }
    for(i=1;i<=5;i++){
         for(j=1;j<=5;j++){
             cin>>a[i][j];

         }
    }
    
        
         for(i=1;i<=5;i++){
             int maxx=-10000;
         for(j=1;j<=5;j++){
             
             if(a[i][j]>maxx){
                 maxx=a[i][j];
                 imax=i;
                 minj=j;
             }

         }

         b[imax][minj]=a[imax][minj];
    }

    for(i=1;i<=5;i++){
             int minn=10000;
         for(j=1;j<=5;j++){
             
             if(a[i][j]<minn){
                 minn=a[i][j];
                 imax=i;
                 minj=j;
             }

         }

         b[imax][minj]=a[imax][minj];
    }
    for(i=1;i<=5;i++){
        int sum=0;
        for(j=1;j<=5;j++){
            if(b[i][j]!=0x3f3f3f){
                sum++;
            }
        }//每行扫描完之后判断一下是否只有一个元素,若只有一个,则代表它既是行最大,也是列最小。
        if(sum==1){
            cout<<i<<" "<<j<<" "<<b[i][j];
            return 0;
        }
    }
            cout<<"not found";
               return 0;
               }

请问一下我设置两个数组,一个存输入数据,然后把每行的最大值和每列的最小值分别找出来放到b中,最后检查b的每一行,如果一行只有一个,则其为该行最大的同时也为该列最小,这样为什么不对呢

2023/1/14 14:07
加载中...