解题思路:
使用一个行最大元素列表和一个列最小元素列表,去比较矩阵的每个元素是不是满足行最大和列最小。
注意事项:
注意数组下标从0开始,但行列下标是从1开始
参考代码:
a=[] #存矩阵 rows=[] #存每一行的最大元素 cols=[] #存每一列的最小元素 for i in range(5): tmp=list(map(int, input().split())) a.append(tmp) #读入到矩阵的每行 rows.append(max(tmp)) #存每一行的最大元素 for j in range(5): mintmp=a[0][j] for i in range(5): if a[i][j]<mintmp: mintmp=a[i][j] cols.append(mintmp) #存每一列的最小元素 flag = 1 #1表示没有找到矩阵鞍点 for i in range(5): for j in range(5): if a[i][j] == rows[i] and a[i][j] == cols[j]: print(i+1,j+1,a[i][j]) #遍历矩阵的每个元素,判断其是不是行最大和列最小 flag=0 #0表示找到了矩阵鞍点 if flag ==1: print("not found")
0.0分
5 人评分