查詢矩陣中 Z 形元素和的 Python 程式


假設我們有一個 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

更新日期:2020-10-05

377 次瀏覽

開始您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.