View Code of Problem 85

#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
struct susma{
	int min;
	bool max;
}; 
const int INF=0x3fffffff; 
int main(){
	int a[100][100]={};
	int m,n;
	cin>>m>>n;
	susma man[m+1]={};
	for(int i=1;i<=m;i++){
		int min=INF;
		for(int j=1;j<=n;j++){
			cin>>a[i][j];
			if(min>a[i][j]){
				min=a[i][j];
				man[i].min=j;//记录每行最小值的列 
			}
		}
	} 
	for(int i=1;i<=m;i++){//man数组的长度 
		int column=man[i].min;
		int max=0;
		int maxpos=0;
		for(int j=1;j<=m;j++){//遍历一列 
			if(max<a[j][column]){
				max=a[j][column];
				maxpos=j;
			}
		}
		if(i==maxpos){
			man[i].max=true;
			cout<<i<<" "<<column<<endl;
		}

		else
			man[i].max=false;	
	}
	return 0; 
	
} 

Double click to view unformatted code.


Back to problem 85