top1编程
← 返回题目
题解

计算鞍点

1 条题解

  • 0
    @ 2026-7-28 22:45:02
    #include<bits/stdc++.h>
    using namespace std;
    int main(){
    	int a[6][6],x,y,f=1,z=0,i2=0,j2,s=0;
    	for(int i=0;i<5;i++)
    	{
    		for(int j=0;j<5;j++)
    		{
    			cin>>a[i][j];
    		}
    	}
    	for(int i=0;i<5;i++)
    	{
    		z=0;
    		//一行的列先比较最大值
    		for(int j=0;j<4;j++)
    		{
    			if(z<a[i][j])
    			{
    				x=i+1;
    				y=j+1;
    				z=a[i][j];//一行的最大值
    				j2=j;
    			}
    		}
    		while(f&&f<5)
    		{
    			if(z>a[i2][j2])//一行的最大值又是一列的最小值
    			{
    				f=0;//说明z不是一列里面的最小值
    			}
    			else{
    			    f++;
    			}
    			i2++;
    		}
    		i2=0;
    		if(f)
    		{
    			cout<<x<<" "<<y<<" "<<z<<endl;
    			s=1;//找到符合的数
    		}
    		f=1;
    	}
    	if(s==0)
    	{
    		cout<<"not found";
    	}
    	return 0;
    }
    
    • 1