View Code of Problem 85

#include<stdio.h>
int main()
{
	int m,n;
	scanf("%d %d",&m,&n);
	int a[m][n];
	int i,j,min[m],max[n];
	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
		  scanf("%d",&a[i][j]);
	}
	for(i=0;i<m;i++)//求每行中最小的
	{
		min[i]=0;
		for(j=1;j<n;j++)
		{
			if(a[i][min[i]]>a[i][j])
			  min[i]=j;
		}
	} 
	for(i=0;i<n;i++)//求每列中最大的
	{
	   max[i]=0;
	   for(j=1;j<m;j++)
	   {
	   	  if(a[max[i]][i]<a[j][i])
	   	    max[i]=j;
	   }	
    }
    if(m<n)
    {
    	for(i=0;i<m;i++)
    	{
    		if(a[i][min[i]]==a[max[min[i]]][min[i]])
    		  printf("%d %d\n",max[i]+1,min[i]+1);
		}
	}
	else
	{
		for(i=0;i<n;i++)
    	{
    		if(a[max[i]][i]==a[max[i]][min[max[i]]])
    		  printf("%d %d\n",max[i]+1,min[i]+1);
		}
	}
} 

Double click to view unformatted code.


Back to problem 85