用 Python 编写程序,用于查找矩阵中形成 Z 形的元素之和

pythonserver side programmingprogramming更新于 2026/1/8 22:36:17

假设我们有一个 n x n 矩阵 M,我们必须找到矩阵中形成 Z 形的所有元素之和。

因此,如果输入如下

432
918
256

那么输出将是 23,因为元素是 [4+3+2+1+2+5+6] = 23。

为了解决这个问题,我们将遵循以下步骤 −

  • n := 矩阵的行数
  • 如果 n <= 2,则
    • 返回矩阵中所有元素的总和
  • first_row := 第一行的总和
  • last_row := 最后一行的总和
  • diagonal = 矩阵[i, n-1-i] 的总和,其中 i 从 1 到 n-2
  • 返回 first_row + last_row + diagonal

让我们看看下面的实现以便更好地理解 −

示例

class Solution:
   def solve(self, matrix):
      n = len(matrix)
      if n <= 2:
         return sum(sum(row) for row in matrix) first_row = sum(matrix[0])
      last_row = sum(matrix[n-1])
      diagonal = sum(matrix[i][n-1-i] for i in range(1, n-1))
      return first_row + last_row + diagonal
ob = Solution()
matrix = [ [4, 3, 2], [9, 1, 8], [2, 5, 6] ]
print(ob.solve(matrix))

输入

matrix = [[4, 3, 2],
[9, 1, 8],
[2, 5, 6]]

输出

23

相关文章


有用资源