문제
N*N의 격자판이 주어지면 각 행의 합, 각 열의 합, 두 대각선의 합 중 가 장 큰 합을 출력
풀이 과정
3. 행의 합 : grid[i][j]
4. 열의 합 : grid[j][i]
5. 정대각선의 합 : if(i === j) grid[i][j]
6. 역대각선의 합 : if(grid.length - 1 - i === j) grid[i][j];
const solutionA = (grid) => {
let answer = 0;
let diagonal = 0;
let reverseDiagonal = 0;
for (let i = 0; i < grid.length; i++) {
let row = 0;
let column = 0;
for (let j = 0; j < grid.length; j++) {
row += grid[i][j];
column += grid[j][i];
if (i === j) diagonal += grid[i][j];
if (grid.length - 1 - i === j) reverseDiagonal += grid[i][j];
}
answer = Math.max(answer, row, column);
}
return Math.max(answer, diagonal, reverseDiagonal);
};
const testA = solutionA([
[10, 13, 10, 12, 10],
[12, 39, 30, 23, 11],
[11, 25, 50, 53, 15],
[19, 27, 29, 37, 27],
[19, 13, 30, 13, 19],
]);
console.log(testA);
틀린 부분이 있거나 보충해야 할 내용이 있다면 댓글이나 DM(sungstonemin)으로 알려주시면 감사하겠습니다😄