请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。
class Solution {
public:
int diagonalSum(vector<vector<int>>& mat) {
int len = mat.size();
int ans = 0;
for(int i=0;i<len;i++) {
ans += mat[i][i];
}//计算主对角线
for(int i=0;i<len;i++) {
ans += mat[i][len - i - 1];
}//计算副对角线
if(len & 1) {
ans -= mat[len / 2][len / 2];
}//如果边长为奇数,去掉其交界点
return ans;
}
};
原文:https://www.cnblogs.com/MartinLwx/p/14311191.html