본문 바로가기

프로그래머스(Java)/Level 0

[프로그래머스] 타겟넘버

728x90

코드 힌트

  1. 2중 for문 사용하기:
    • 2차원 배열을 순회하려면 i와 j 두 개의 인덱스를 사용하여 배열의 모든 요소를 탐색합니다.
    • i는 행 인덱스를, j는 열 인덱스를 나타냅니다.
  2. 인덱스 합 조건 확인:
    • 배열의 각 요소에 대해 i + j의 합이 주어진 값 k 이하인지를 확인합니다.
    • 조건을 만족할 때만 해당 요소의 값을 result에 더해줍니다.
  3. 변동 길이 배열 처리:
    • 배열 board의 각 행은 서로 다른 길이를 가질 수 있으므로, 내부 for문에서 열의 길이를 board[i].length로 동적으로 설정합니다.
    • 이를 통해 배열의 크기에 상관없이 올바르게 요소를 탐색할 수 있습니다.
  4. 결과 반환:
    • 모든 조건을 만족하는 요소들의 합을 계산한 후, 최종 결과를 반환합니다.

 


정답은 더보기 클릭

더보기
class Solution {
    public int solution(int[][] board, int k) {
        int result = 0; // 결과를 저장할 변수 초기화
        
        // 2중 for문을 통해 2차원 배열의 모든 요소를 탐색
        for (int i = 0; i < board.length; i++) {
            for (int j = 0; j < board[i].length; j++) {
                // 인덱스의 합 (i + j)이 k 이하일 때만 해당 요소의 값을 결과에 더함
                if (i + j <= k) {
                    result += board[i][j];
                }
            }
        }
        
        return result; // 최종 결과 반환
    }
}
728x90