找鞍点

求n行n列整数矩阵的鞍点,即该位置上的元素是所在行上的最小值,也是所在列上的最大值。如果存在鞍点则输出其行号、列号,否则输出None。简单起见,假设元素均不相同。

#include<stdio.h>  
int main()  
{  
    int a[6][6],n;  
    scanf("%d",&n);  
    int i,j;  
    for(i=0; i<n; i++) 
 { 
        for(j=0; j<n; j++)  
        {  
            scanf("%d",&a[i][j]);  
        }  
    }
    int k=0,y=0,flag=1,p=0;  
    if(n==1)  
        printf("0,0");
    else  
    {  
        for(i=0; i<n; i++)  
        {  
            y=i;  
            for(p=0; p<n; p++)
            {  
                if(a[i][k]<=a[i][p]) 
                {  
                    k=p;  
                }  
            }  
            for(j=0; j<n; j++)
            {  
                if(a[y][k]>a[j][k]) 
                {  
                    y=j;  
                    break;  
                }  
            }  
            if(i==y)
            {  
                flag=0;  
                break;  
            }  
        }  
        if(flag==0)  
            printf("%d,%d",i,k);  
        else 
   printf("None");  
    }  
    return 0;  
}  
发布了150 篇原创文章 · 获赞 140 · 访问量 1万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 技术工厂 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览