[LeetCode] 1572. Matrix Diagonal Sum

Chobby·2025년 9월 23일
1

LeetCode

목록 보기
550/652

😎풀이

  1. 좌측 대각선의 합을 모두 더함
  2. 우측 대각선의 합을 모두 더함
  3. 홀 수의 길이를 갖는 2차원 배열인가 검증
    3-1. 짝수라면, 무시
    3-2. 홀수라면, 중복 처리된 가장 중앙의 요소를 합에서 제거
  4. 합계 반환환
function diagonalSum(mat: number[][]): number {
    let sum = 0
    const m = mat.length
    const mid = Math.floor(m / 2)
    for(let i = 0; i < m; i++) {
        sum += mat[i][i]
    }
    for(let i = 0; i < m; i++) {
        const x = m - (i + 1)
        sum += mat[i][x]
    }
    if((m & 1) === 1) sum -= mat[mid][mid]
    return sum
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글