资讯专栏INFORMATION COLUMN

方阵中的鞍点判断(数组) C语言

kk_miles / 1581人阅读

摘要:描述输入一个正整数和阶方阵中的元素,如果找到中的鞍点鞍点的元素值在该行上最大,在该列上最小,就输出它的下标否则,输出没有鞍点,设中最多有一个鞍点。

描述:

  输入一个正整数m(1<= m <= 6)和m阶方阵A中的元素,如果找到A中的鞍点(鞍点的元素值在该行上最大,在该列上最小),就输出它的下标;否则,输出"NO"(没有鞍点),设A中最多有一个鞍点。

输入

3

1 2 3

0 1 2

0 0 1

输出

2 2

样例输入

4

1 2 3 4

0 1 1 3

0 0 1 2

1 0 0 1

样例输出

NO

思路及分析:

        用二维数组来做这道题会减小我们的难度。同时,先求出每一行的最大值,再在这一个元素的这一列来判断它是不是最小的,对它们进行判断。最后打印出这个元素的下标就可以了。同时还要注意,在样例中输入4和矩阵里的元素时发现,有重复的值(1)的时候,就算他是最小的,但因为重复,不符合鞍点的定义,所以,还需要判断是否有重复的值。另外,题目说明,鞍点最多只有一个。

#includeint main(void){	int i = 0,  j = 0;	int arr[6][6] = { 0 };	int max = 0;//定义最大值 	int _bool = 0;//标签作用,用来判断是否有重复值	//最后当_bool=0,说明没有,_bool=1,说明有 	int row = 0, col = 0;//行,列 	int m = 0; 	scanf("%d", &m);		for(i = 0; i < m; i++)	{		for(j = 0; j < m; j++)		{			scanf("%d", &arr[i][j]);		}	}		//由于不知道最大值,开始假设第一行第一列元素是最大的 	max = arr[0][0];		 	for(i = 0; i < m; i++)//一行 	{		//假设每一行的第一个元素为最大值 		max = arr[i][j];		//寻找每一行的最大值 		for(j = 0; j < m; j++)		{						if(arr[i][j] > max)			{				//如果是MAX,就记录它的下标				//不可以直接用i或j,它们是随条件在变				//用另一个量来记录下标 				row = j;				_bool = 1; 				//记录最大值,在后面的判断用 				max = arr[i][j];			}		}				//用来判断这一行的最大值是否有重复的		//如果有,_bool=0,不存在鞍点 		for(j = 0; j < m; j++)		{			//循环时不需要判断它本身 			if(arr[i][j] == max && j != row)			{				_bool = 0;			}		}				//列的判断,行满足后,找列的最小值。 		for(j = 0; j < m; j++)		{				if(arr[i][row] < arr[j][row])			{				col = i;			}		}			}		if(_bool == 0)	{		printf("NO/n");	}	else	{		printf("%d %d", row, col);	}		return 0;}

        

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/124774.html

相关文章

  • 【DL-CV】更高级的参数更新/优化(一)

    摘要:对所有参数更新时应用同样的学习率梯度由许多偏导数组成,对应着各个参数的更新。对于偏导数大的,我们希望配个小的学习率给他对于偏导数小的,我们希望配个大的学习率给他,这样各个参数都能获得大致相同的更新幅度,提高网络的健壮性。 后续【DL-CV】更高级的参数更新/优化(二) 【DL-CV】正则化,Dropout【DL-CV】浅谈GoogLeNet(咕咕net) 原版SGD的问题 原味版的S...

    tinyq 评论0 收藏0
  • 深度神经网络的压缩和正则化

    摘要:深度神经网络已经成为解决计算机视觉语音识别和自然语言处理等机器学习任务的较先进的技术。图深度压缩的实验结果训练深度神经网络可以被大量剪枝和压缩的事实意味着我们当前的训练方法具有一些局限性。 深度神经网络已经成为解决计算机视觉、语音识别和自然语言处理等机器学习任务的较先进的技术。尽管如此,深度学习算法是计算密集型和存储密集型的,这使得它难以被部署到只有有限硬件资源的嵌入式系统上。为了解决这个限...

    blankyao 评论0 收藏0
  • GANs正在多个层面有所突破

    摘要:我认为在大多数深度学习中,算法层面上随机梯度的下降是大家所认可的。但目前似乎存在两个问题计算层面纳什平衡达不到可能会退化。 去年我一直在研究如何更好地调整GANs中的不足,但因为之前的研究方向只关注了损失函数,完全忽略了如何寻找极小值问题。直到我看到了这篇论文才有所改变:详解论文: The Numerics of GANs我参考了Mar的三层分析,并在计算层面上仔细考虑了这个问题:我们这样做...

    raoyi 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<