이차원 배열 대각선 순회하기😀
2차원 정수 배열 board와 정수 k가 주어집니다.
i + j <= k를 만족하는 모든 (i, j)에 대한 board[i][j]의 합을 return 하는 solution 함수를 완성해 주세요.
※ 제한 사항
1 ≤ board의 길이 ≤ 100
1 ≤ board[i]의 길이 ≤ 100
1 ≤ board[i][j] ≤ 10,000
모든 board[i]의 길이는 같습니다.
0 ≤ k < board의 길이 + board[i]의 길이
입출력
board | k | result |
---|---|---|
[[0, 1, 2],[1, 2, 3],[2, 3, 4],[3, 4, 5]] | 2 | 8 |
function solution(board, k) {
var answer = 0;
const rows = board.length;
const columns = board[0].length;
for (let i = 0; i < rows; i++) {
for (let j = 0; j < columns; j++) {
if (i + j <= k) {
answer += board[i][j];
}
}
}
return answer;
}
const rows = board.length; 및 const columns = board[0].length;: 주어진 배열의 행과 열의 개수를 저장합니다.
for (let i = 0; i < rows; i++) { for (let j = 0; j < columns; j++) { … }: 중첩된 반복문을 사용하여 모든 배열 원소에 접근합니다.
if (i + j <= k) { answer += board[i][j]; }: 조건 i + j <= k를 만족하는 경우에만 해당 원소의 값을 answer에 더합니다.
return answer;: 최종적으로 계산된 합계를 반환합니다.
이 함수를 예시로 든 배열과 k에 적용하면, 주어진 조건을 만족하는 (i, j)에 대한 board[i][j]의 합을 계산하고 결과를 반환합니다.