计算鞍点
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算鞍点相关的知识,希望对你有一定的参考价值。
计算鞍点
链接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1122
【题目描述】
给定一个5*5的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。
例如:在下面的例子中(第4行第1列的元素就是鞍点,值为8 )。
11 3 5 6 9
12 4 7 8 10
10 5 6 9 11
8 6 4 7 2
15 10 11 20 25
【输入】
输入包含一个5行5列的矩阵。
【输出】
如果存在鞍点,输出鞍点所在的行、列及其值,如果不存在,输出"not found"。
【输入样例】
11 3 5 6 9 12 4 7 8 10 10 5 6 9 11 8 6 4 7 2 15 10 11 20 25
【输出样例】
4 1 8
#include<stdio.h> #include<stdlib.h> const int maxn=105; int a[maxn][maxn]; int main(){ int tmp,cnt=0; for(int i=1;i<=5;i++) for(int j=1;j<=5;j++) scanf("%d",&a[i][j]); for(int i=1;i<=5;i++){ int maxn1=-1,k; for(int j=1;j<=5;j++) if(a[i][j]>maxn1){ maxn1=a[i][j];tmp=j; } for(k=1;k<=5;k++) if(a[k][tmp]<a[i][tmp]) break; if(k==6) { printf("%d %d %d\n",i,tmp,a[i][tmp]); cnt=1; } } if(cnt==0)printf("not found\n"); }
以上是关于计算鞍点的主要内容,如果未能解决你的问题,请参考以下文章