코린이의 소소한 공부노트

[LeetCode/Easy] 1572. Matrix Diagonal Sum 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 1572. Matrix Diagonal Sum

무지맘 2022. 12. 27. 16:25

1. Input

1) 정사각 행렬 mat

- 정사각 행렬이란 행과 열의 개수가 같은 행렬을 말한다.

 

2. Output

1) 행렬의 대각선의 합을 반환

- 대각선은 왼쪽 위부터 시작하는 대각선과 오른쪽 위부터 시작하는 대각선 2개가 있다.

 

3. Constraint

1) 1 <= mat.length == mat[i].length <= 100

2) 1 <= mat[i][j] <= 100

 

4. Example

Input: mat = [[1,2,3],   -> Output: 25

                          [4,5,6],

                          [7,8,9]]

설명: 1 + 5 + 9 + 3 + 7 = 25

 

5. Code

1) 첫 코드(2022/06/14)

int n = mat.length;
int sum = 0;

// primary + secondary
for(int i=0 ; i<n ; i++)
    sum += (mat[i][i] + mat[i][n-1-i]);

if(n%2==0) return sum;
else return sum-mat[n/2][n/2];