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

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

2 1

2
1 7
4 1

NONE**/
int main()
{
int a[10][10];
int n;
int i,j;
int max,maxi,maxj,c,leap;
scanf("%d",&n);
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
scanf("%d",&a[i][j]);
}
}

for(i=0; i<n; i++)
{
leap=1;
maxi=i;
maxj=0;
max=a[i][0];
for(j=1; j<n; j++)
{
if (max<a[i][j])
{
max=a[i][j];
maxi=i;
maxj=j;
}
}
for(c=0;c<n;c++)
{
if(max>a[c][maxj])
{
leap=0;break;
}
}
if (leap)
{
break;
}

}

if (leap)
{
printf ("%d %d",maxi,maxj);
}
else printf ("NONE");

return 0;

}

1个回答

C语言寻找矩阵鞍点问题麻烦看看我的算法哪里有问题

#我dev运行结果是12 ``` #include<stdio.h> int main() { int i,j,max,min,row,colum,t; int a[3][4]={{1,2,3,13},{5,6,7,9},{9,10,11,12}}; for(i=0;i<=2;i++) { max=a[i][0];//找到第i行最大的 for(j=0;j<=3;j++) { if(a[i][j]>max) { max=a[i][j]; colum=j; } } //现在这一行最大的是a[i][colum],下面判断是否为该列最小的 min=a[0][colum];//此处先设max那一行的 最小值是 a[0][colum] for(t=0;t<=2;t++)//找到该行最小的 { if(a[t][colum]<min); { min=a[t][colum]; row=t; } } if(max==min) printf("%d是鞍点\n",min); else printf("*\n"); //这是我为了看过程 } return 0; } ```![图片说明](https://img-ask.csdn.net/upload/201911/05/1572950293_115684.png)

Problem Description Zhou xingxing is the successor of one style of kung fu called "Karate Kid".he is falling love with a beautiful judo student,after being humiliated by her boyfriend,a Taekwando master from Japan,Zhou is going to fight with his rival in love.The way they fight is to destroy the wooden plank between some wooden pegs,in order to cut these wooden pegs into two disconnected parts,and destroy each piece of plank need consume different energy.However Zhou xingxing is beginner after all,so he is turn to you for help,please calculate the minimum energy he need to destroy the wooden plank. Input The input consists of multiple test cases. Each test case starts with two integers n (0 < n <= 100) and m in one line, where n、m are the number of wooden pegs and wooden plank. Following are m lines, each line contains three integers s, e and q (0 <= s, e < n,q > 0), meaning that there need q energy to destroy the wooden plank between s and e. Output There is only one line for each test case, which contains the minimum energy they need to complete this fight. Sample Input 2 1 0 1 50 3 2 0 1 50 1 2 10 Sample Output 50 10
C++对输入的文件的数据求一阶倒数
MFC对输入的文件的数据求一阶倒数，然后判定其中的拐点和鞍点的算法是什么？
Description 给定一个海拔平面图，相当于一个二维数组，数组的每个元素表示一个点的海拔高度。请判断该图中是否存在鞍点，如果存在，则输出该鞍点的位置，即行、列坐标。 本题规定鞍点的定义为：该点的值在它所在的那行中是唯一最大的，且该点的值在它所在的那列中是唯一最小的。 Input 输入有多个测试用例，如果把每个测试用例看作一个"块"，那么，在一个"块"中： 第一行是两个正整数m和n，分别表示该平面图的行数和列数。0 < m, n ≤ 1000 接下来m行，每行n个非负整数，每个整数表示一个点的海拔高度。 测试数据保证如果存在鞍点，则只存在一个鞍点。 Output 对每个测试用例输出一行：如果该图存在鞍点，则输出该鞍点的行、列坐标。否则输出 -1 Sample Input 5 6 75 99 47 95 17 69 80 5 2 97 66 8 38 32 40 89 50 66 48 44 21 66 23 10 11 21 6 74 6 55 4 4 5 4 5 3 9 8 7 8 3 2 6 1 4 4 3 3 Sample Output 3 3 -1 ========================================== ``` #C# #include<stdio.h> int main(void){ int m, n, i, j, sum, c, max, min, xia1, xia2, d; static int z[1005][1005]; static int jie[1005][1005]={-1, -1, -1}; static int jie2[1005][1005]={-1, -1, -1}; while(scanf("%d%d", &m, &n)!=EOF){ for(i=1; i<=1003; i++) for(j=1; j<=1003; j++){ jie[i][j]=-1; jie2[i][j]=-1; } for(i=1; i<=m; i++) for(j=1; j<=n; j++) scanf("%d", &z[i][j]); //读入矩阵 for(i=1; i<=m; i++){ max=-9999; c=0; for(j=1; j<=n; j++) if(z[i][j]>=max) { max=z[i][j]; xia1=i; xia2=j;} for(j=1; j<=n; j++) if(z[i][j]==max) c++; if(c==1) jie[xia1][xia2]=z[xia1][xia2]; } //横向求最大项并作筛子jie记录 for(j=1; j<=n; j++){ min=9999; c=0; for(i=1; i<=m; i++) if(z[i][j]<=min) { min=z[i][j]; xia1=i; xia2=j;} for(i=1; i<=m; i++) if(z[i][j]==min) c++; if(c==1) jie2[xia1][xia2]=z[xia1][xia2]; } //纵向求最xiao项并作筛子jie2记录 d=0; for(i=1; i<=m; i++) for(j=1; j<=n; j++){ if(jie[i][j]==jie2[i][j]&&jie[i][j]!=-1&&jie2[i][j]!=-1) { printf("%d %d\n", i-1, j-1); d++; break; } if(d>0) break; } //两个筛子进行对比输出 if(d==0) printf("-1\n"); } return 0; } ``` 个人思路： 因为使用原始算法超时不通过， 所以改进思路： 定义jie和jie2两个和题目矩阵一样的二维数组（全部元素-1）， 把每一行唯一最大的元素记录如z[5][6 然后把jie[5][6]修改为那个值， 每一列同理jie2中，最后扫描整个jie和jie2，若两者相同且不为-1， 则项为鞍点。 求大神指点
MFC中如何使用求导法判断周期数据中的拐点和鞍点
MFC中如何使用求导法判断周期数据中的拐点和鞍点，分别提取它们到新的数据文件

![图片说明](https://img-ask.csdn.net/upload/201812/10/1544440653_175889.png)![图片说明](https://img-ask.csdn.net/upload/201812/10/1544440667_21011.png)![图片说明](https://img-ask.csdn.net/upload/201812/10/1544440677_241425.png) ```#include<stdio.h> #include<string.h> int main() { int m,n; scanf("%d%d",&m,&n); int a[m][n]; int i,j,k,max,min,p=0,b=0,flag=0; for(i=0;i<m;i++) { for(j=0;j<n;j++) scanf("%d",&a[i][j]); } for(i=0;i<m;i++) { max=a[i][0]; for(j=0;j<n;j++) { if(max<a[i][j]) { max=a[i][j]; p=j;} } min=a[0][p]; for(k=0;k<m;k++) { if(min>a[k][p]) { min=a[k][p]; b=k;} } if(min==max) { printf("%d %d %d\n",b,p,a[b][p]); flag=1; break;} } if(flag==0) printf("It does not exist!"); return 0;}![图片说明](https://img-ask.csdn.net/upload/201812/10/1544440796_234701.png) ```

Java学习的正确打开方式

linux系列之常用运维命令整理笔录

Python十大装B语法
Python 是一种代表简单思想的语言，其语法相对简单，很容易上手。不过，如果就此小视 Python 语法的精妙和深邃，那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点，并附上详细的实例代码。如能在实战中融会贯通、灵活使用，必将使代码更为精炼、高效，同时也会极大提升代码B格，使之看上去更老练，读起来更优雅。

2019年11月中国大陆编程语言排行榜
2019年11月2日，我统计了某招聘网站，获得有效程序员招聘数据9万条。针对招聘信息，提取编程语言关键字，并统计如下： 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...

《奇巧淫技》系列-python！！每天早上八点自动发送天气预报邮件到QQ邮箱

SQL-小白最佳入门sql查询一

Nginx 原理和架构
Nginx 是一个免费的，开源的，高性能的 HTTP 服务器和反向代理，以及 IMAP / POP3 代理服务器。Nginx 以其高性能，稳定性，丰富的功能，简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求，主要负责调度工作进程：加载配置、启动工作进程及非停升级。worker 进程负责处...
【图解经典算法题】如何用一行代码解决约瑟夫环问题

“狗屁不通文章生成器”登顶GitHub热榜，分分钟写出万字形式主义大作

《程序人生》系列-这个程序员只用了20行代码就拿了冠军

11月8日，由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办，科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。 　　区块链技术被认为是继蒸汽机、电力、互联网之后，下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力，电力解决了人类基本的生活需求，互联网彻底改变了信息传递的方式，区块链作为构造信任的技术有重要的价值。 　　1...
Python 植物大战僵尸代码实现(2):植物卡片选择和种植

Java世界最常用的工具类库
Apache Commons Apache Commons有很多子项目 Google Guava 参考博客

【技巧总结】位运算装逼指南

8年经验面试官详解 Java 面试秘诀

1.两种思维方式在求职面试中，经常会考察这种问题：北京有多少量特斯拉汽车？某胡同口的煎饼摊一年能卖出多少个煎饼？深圳有多少个产品经理？一辆公交车里能装下多少个乒乓球？一个正常成年人有多少根头发？这类估算问题，被称为费米问题，是以科学家费米命名的。为什么面试会问这种问题呢？这类问题能把两类人清楚地区分出来。一类是具有文科思维的人，擅长赞叹和模糊想象，它主要依靠的是人的第一反应和直觉，比如小孩...