Diagonal Difference

soyoung kim·2022년 10월 28일
0

정방행렬이 주어지고, 해당 행렬을 대각선 방향으로 다 더한 원소들끼리의 차를 절대값으로 뱉는 함수를 작성해야되는 문제

left_to_right 는
(1,1)
(2,2)
(3,3)
위와 같이 동일한 숫자의 위치를 더하면 됨.

right_to_left 행렬은 i + j = 2;
0, 2
1, 1
2, 0
둘의 합이 === 배열.length - 1 이 되는 경우를 이용하여 작성


function diagonalDifference(arr) {
    // Write your code here
    let left_to_right = 0;
    let right_to_left = 0;
    const arrLength = arr.length; 
    
    for(let i = 0; i < arrLength; i++){
        for(let j = 0; j < arrLength; j++){
            if(i === j){ //(1,1)(2,2)(3,3)
                left_to_right += arr[i][j]
            }
            if(i + j === arrLength - 1){ 
                right_to_left += arr[i][j]
            }
        }
    }
    return Math.abs(left_to_right - right_to_left);

}
profile
Front-end Developer

0개의 댓글