数组-鞍点

描述

如果矩阵中元素在行中是最小的,而在列中是最大的,则称这个元素师矩阵的鞍点。

输入

输入第一行是n和m,表示矩阵的行数和列数。1<=n,m<=10

紧接着n行,每行有m个整数,整数之间用空格分开。

输出

如果矩阵不存在鞍点,则输出No;

如果存在鞍点,则显示鞍点的行号和列号,中间用空格分开。

如果存在多个,则输出行号最小的;若行号一样,则输出列号最小。

样例输入
3 4
1 2 3 4
9 8 7 6
4 5 6 3
样例输出
2 4

#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
	int n,m,i,j,k,a[100][10],min,minj,f;
	scanf("%d%d",&n,&m);
	for(i=0;i<n;i++)//从0开始
	    for(j=0;j<m;j++)
		   scanf("%d ",&a[i][j]);
	for(i=0;i<n;i++)
	{
		min=a[i][0];
		minj=0;
		for(j=0;j<m;j++)
		    if(a[i][j]<min)
		      {
		      	min=a[i][j];
		      	minj=j;
			  }//找出行中最小的
		f=1;
		for(k=0;k<n;k++)
		   if(min<a[k][minj])
		     {
		     	f=0;
		     	continue;
			 }//找出列中最大的
			 if(f)
			 {
			 	printf("%d %d",i+1,minj+1);
			 	break;
			 }
		}
	        if(!f)
	           printf("No");
	 
	return 0;
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值