矩阵中的“马鞍点”,即满足该元素在所在行最小,在所在列最大

来源:互联网 发布:win7允许程序访问网络 编辑:程序博客网 时间:2024/06/02 21:57
#include <stdio.h>#define M 4#define N 4int main(){    int a[M][N];    int i, j, k, c, min;    int 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++)    {       //找到每行中的最小元素        min = a[i][0];        c = 0;        for(j = 0; j < N; j++)        {            if(a[i][j] < min)            {                min = a[i][j];                c = j;            }        }       //验证此最小元素在所在的列是否最大        for(k = 0; k < M; k++)            if(a[k][c] > min)                break;        if(k == M)        {            printf("(%d,%d)",i,c);            flag=1;        }    }    if(flag == 0)        printf("Not Found.");    return 0;}
原创粉丝点击