Problem#
給你一個矩陣 mat
要你回傳對角的總和,重複的只要加一次就好
- 測資限制:
- 1≤n≤100
- mat=nxn
- 1≤mat[i][j]≤100
想法#
for 迴圈
- 時間複雜度: O(n)
- 空間複雜度: O(1)
AC Code#
Copy
class Solution { public: int diagonalSum(vector<vector<int>>& mat) { int n = mat.size(), m = mat[0].size(); int ans = 0; for(int i = 0, j = 0; i < n && j < m; i++, j++) { ans += mat[i][j]; } for(int i = 0, j = m-1; i < n && j >= 0; i++, j--) { ans += mat[i][j]; } return ans; } };