给你一个正方形矩阵 mat,请你返回矩阵对角线元素的和。
请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。
image.png
解题思路
- 区分行列数的奇偶,奇数列需减去中心点的值。
Python3代码
class Solution:
def diagonalSum(self, mat: List[List[int]]) -> int:
m= len(mat)
ans = 0
for i in range(m):
j = m-1-i
ans += mat[i][j] + mat[i][i]
if m % 2:
ans -= mat[(m-1)//2][(m-1)//2]
return ans
网友评论