描述
代码(C++)
#include <iostream>
#include <vector>
using namespace std;
vector< int > RMax ( int data[ 5 ] [ 5 ] ) {
vector< int > temp;
int ( * row) [ 5 ] = data;
for ( int i = 0 ; i < 5 ; ++ i) {
int maxIdx = 0 ;
for ( int j = 0 ; j < 5 ; ++ j) {
if ( ( * row) [ j] > ( * row) [ maxIdx] ) {
maxIdx = j;
}
}
temp. push_back ( maxIdx) ;
++ row;
}
return temp;
}
vector< int > CMin ( int data[ 5 ] [ 5 ] ) {
vector< int > temp;
for ( int i = 0 ; i < 5 ; ++ i) {
int minIdx = 0 ;
for ( int j = 0 ; j < 5 ; ++ j) {
if ( data[ j] [ i] < data[ minIdx] [ i] ) {
minIdx = j;
}
}
temp. push_back ( minIdx) ;
}
return temp;
}
void show ( vector< int > RMax, vector< int > CMin, int data[ 5 ] [ 5 ] ) {
for ( int i = 0 ; i < 5 ; ++ i) {
for ( int j = 0 ; j < 5 ; ++ j) {
if ( data[ i] [ RMax[ i] ] == data[ CMin[ j] ] [ j] ) {
cout << data[ i] [ RMax[ i] ] << " " ;
}
}
}
}
int main ( ) {
int data[ 5 ] [ 5 ] = {
{ 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 }
} ;
show ( RMax ( data) , CMin ( data) , data) ;
return 0 ;
}
结果