• 第4章-22.求矩阵的局部极大值 (15分)


    给定M行N列的整数矩阵A,如果A的非边界元素[大于相邻的上下左右4个元素,那么就称元素[是矩阵的局部极大值。本题要求给定矩阵的全部局部极大值及其所在的位置。

    输入格式:

    输入在第一行中给出矩阵A的行数M和列数N(3M,N20);最后M行,每行给出A在该行的N个元素的值。数字间以空格分隔。

    输出格式:

    每行按照“元素值 行号 列号”的格式输出一个局部极大值,其中行、列编号从1开始。要求按照行号递增输出;若同行有超过1个局部极大值,则该行按列号递增输出。若没有局部极大值,则输出“None 总行数 总列数”。

    输入样例1:

    4 5
    1 1 1 1 1
    1 3 9 3 1
    1 5 3 5 1
    1 1 1 1 1
    
     

    输出样例1:

    9 2 3
    5 3 2
    5 3 4
    
     

    输入样例2:

    3 5
    1 1 1 1 1
    9 3 9 9 1
    1 5 3 5 1
    
     

    输出样例2:

    None 3 5
     1 # 求矩阵的局部极大值
     2 # Author: cnRick
     3 # Time  : 2020-3-30
     4 matrix = []
     5 m,n = map(int,input().split())
     6 isNone = True
     7 for  i in range(m): #构建矩阵
     8     thisLine = list(map(int,input().split()))
     9     matrix.append(thisLine)
    10 for row in range(1,m-1):
    11     for col in range(1,n-1):
    12         thisNum = matrix[row][col]
    13         if thisNum > matrix[row][col-1] and thisNum > matrix[row][col+1]
    14             and thisNum > matrix[row+1][col] and thisNum > matrix[row-1][col]:
    15                 print(matrix[row][col],row+1,col+1)
    16                 isNone = False
    17 else:
    18     if isNone == True:
    19         print("None {:d} {:d}".format(m,n))
     
  • 相关阅读:
    nxn随机矩阵乘以概率向量依旧是概率向量
    关于飞行器姿态计算
    两矩阵相乘后的秩
    关于矩阵A*b=A*c 中b是否等于c
    5.5节24题
    推论5.2.5
    js中function参数默认值
    陈经纶学校分析数据导出情况
    支付宝申请
    外国javascript资源搜索
  • 原文地址:https://www.cnblogs.com/dreamcoding/p/12599741.html
Copyright © 2020-2023  润新知