说明:假设给定一个 m * n 的矩阵(矩阵中数值的取值范围是 0~1024,且各不相同),如果某一个元素的值在同一行的所有元素中最小,并且在同一列的所有元素中最大,那么该元素便是幸运数字。
假设使用
matrix = [[10,36,52], [33,24,88], [66,76,99]]
matrix = [[10,36,52],
[33,24,88],
[66,76,99]]
row = len(matrix)
col = len(matrix[0])
min_row = [1024]*3
max_col = [0] *3
for i in range(row):
for j in range(col):
min_row[i] = min(matrix[i][j],min_row[i])#将每行最小的数存放到min_row中
max_col[j] = max(matrix[i][j],max_col[j])#将每列最大的数存放到max_col中
#min_row = [10,24,66]
#max_col = [66,76,99]
#遍历矩阵中的每个元素
for i in range(row):
for j in range(col):
#判断是否同时满足“同行最小和同列最大:
if matrix[i][[j] == min_row[i] and matrix[i][[j] == max_col[j]
print(matrix[i][j])