一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。

本题要求编写程序,求一个给定的n阶方阵的鞍点。

输入格式:

输入第一行给出一个正整数n(1≤n≤6)。随后n行,每行给出n个整数,其间以空格分隔。

输出格式:

输出在一行中按照“行下标 列下标”(下标从0开始)的格式输出鞍点的位置。如果鞍点不存在,则输出“NONE”。题目保证给出的矩阵至多存在一个鞍点。

输入样例1:

4
1 7 4 1
4 8 3 6
1 6 1 2
0 7 8 9

输出样例1:

2 1

输入样例2:

2
1 7
4 1

输出样例2:

NONE

本题所给的测试点:

测试点 提示 结果 耗时 内存
0 sample1等价,存在鞍点

答案正确

3 ms 296 KB
1 sample2等价,不存在

答案正确

2 ms 292 KB
2 最大规模,有并列极值元素,最后一个是鞍点

答案正确

2 ms 260 KB
3 最小规模

答案正确

2 ms 384 KB

这里我主要说一下第2个测试点,最大规模,有并列极值元素,最后一个是鞍点:

这里注意一定要写>=,这样有并列的话,最后一个才是鞍点。

if(s[i][j]>=s[i][lie])
{lie=j;
}   

其他的大家看代码就可以了,后面都有注释。

代码如下:

#include<stdio.h>
int main()
{int n,m,i,j,t;scanf("%d",&n);int s[n][n];for(i=0;i<n;i++)        // 输入矩阵{for(j=0;j<n;j++)scanf("%d",&s[i][j]); }int row=0,lie=0;     int flag=0;     for(i=0;i<n;i++)        // i控制行,j控制列。 {for(j=0;j<n;j++){if(s[i][j]>=s[i][lie])  //找到当前行最大,将行最大所在的列数赋值给 lie {lie=j;      //有并列极值元素,最后一个是鞍点}   }flag=1;/* 遍历行最大值所在的那一列,若列上存在大于上一循环找到的鞍点,则该点不是鞍点,令flag=0,跳出当前循环,进入下一行继续寻找鞍点。*/for(row=0;row<n;row++)   {if(s[row][lie]<s[i][lie])  {flag=0;break;}}// 若找到鞍点,则跳出循环。if(flag){break;}    }if(flag)      printf("%d %d",i,lie);else         printf("NONE");
} 

PTA c语言找鞍点相关推荐

  1. PTA C语言找不同

    这是一个签到题,非常简单.一群网友在网上在玩游戏,看谁是最与众不同的,每一个人都单独写一个数字,然后依次上交,谁的数据没有和其他人重复,谁就赢了,如果有很多人都与众不同,那么第一个做到的才是真正的与众 ...

  2. 只学python找工作难吗-只学python语言找工作难吗?

    只学python语言找工作难吗?小编可以肯定的告诉你不难, 初级中级高级职位都有啊,学习python可以找后台开发.数据挖掘.机器学习等方面的工作,python的强大之处在于拥有许多第三方包,可以说是 ...

  3. C语言找出两个字符串唯一不同的一个字符(附完整源码)

    C语言找出两个字符串唯一不同的一个字符 C语言找出两个字符串唯一不同的一个字符完整源码(定义,实现,main函数测试) C语言找出两个字符串唯一不同的一个字符完整源码(定义,实现,main函数测试) ...

  4. window系统下C语言找不到fork()函数

    window系统下C语言找不到fork()函数 有次模拟进程时,想在window系统下调用fork()函数,但是就是引入相关头文件都无法找到函数,一开始是怀疑是否引入的头文件有误或者缺失,发现并没有缺 ...

  5. C语言——找出矩阵最大值

    C语言--找出矩阵最大值 问题描述: 代码: # include <stdio.h>int main() {int a[3][4];int i, j;int maxi = 0;int ma ...

  6. 7-153 找鞍点 (20 分)

    7-153 找鞍点 (20 分) 一个矩阵元素的"鞍点"是指该位置上的元素值在该行上最大.在该列上最小. 本题要求编写程序,求一个给定的n阶方阵的鞍点. 输入格式: 输入第一行给出 ...

  7. C语言---找零问题------程序优化

    C语言----找零问题----程序优化 题目详情: 现有一元,两元,五元面额的纸币若干,给出任意的找零要求,给出每种找零方案,输出循环次数. 优化代码一: 代码优化内容: 利用num/5,num/2来 ...

  8. C语言找出数组中最小的数和它的下标

    C语言找出数组中最小的数和它的下标,然后把它和数组中最前面的元素对换位置 #include <stdio.h> int main() {int A[10]={3,7,5,9,10,2,1, ...

  9. 习题7-5 找鞍点 (20分)(函数调用解法:先找最大值后比较是否为最小值)

    习题7-5 找鞍点 (20分) 一个矩阵元素的"鞍点"是指该位置上的元素值在该行上最大.在该列上最小. 本题要求编写程序,求一个给定的n阶方阵的鞍点. 输入格式: 输入第一行给出一 ...

最新文章

  1. 第10章 接口、继承与多态----抽象类和接口
  2. MFC中UPD通信详细解说
  3. 易遭黑客利用,慎用免费的网站SSL证书!!!
  4. debian 9 安装后的配置,debian 9 开发环境。
  5. Qt实现QTextEdit背景透明
  6. mysql如何创建用户代码_MySQL创建用户与受权方法_mysql
  7. Memcached 学习---(4)Memcached 连接
  8. 朋友圈最忌讳发什么?
  9. [置顶] 使用Joson的格式字符串在Socket中通讯时数据格式的转换
  10. SpringCloud微服务(02):Ribbon和Feign组件,实现服务调用的负载均衡
  11. MVC渲染文章内容的html标签转义
  12. Class类文件结构之ConstantValue属性
  13. MP3 Lame 转换 参数 设置(转)
  14. BIP63(隐身地址)
  15. android 获取粗略位置_从Android上的GPS提供商处获取*粗略*位置
  16. 使用System.setOut()
  17. spring clude ---服务网关组件Netflix Zuul
  18. 归一化处理的目的和意义
  19. 了解线性分组码的编码原理并编程实现C语言,线性分组码的编译码(DOC).doc
  20. react使用antd-mobile做自定义替换头像功能

热门文章

  1. ora-12504 连接其他数据库显示错误
  2. 数据分析实战1:淘宝数据分析
  3. 小日期时间型_货币基金破2%?稳健型选手们来瞧瞧这类基金咯!
  4. 软文写作攻略:教育行业软文怎么写?
  5. python anaconda安装redis_python与redis的初次碰撞——把玩redis数据库的一点心得
  6. 市场掀起新猜度:当代置业也要暴雷?
  7. usb驱动程序初步编写
  8. 案例分享:公园智慧路灯系统解决方案详细解析
  9. 架构师的成长必经之路
  10. 1015 德才论 (25 分)