코딩_Python(Level.0)

[Level.0] 이차원 배열 대각선 순회하기

Hong's_Computer 2026. 3. 16. 15:00
반응형

문제 설명: 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]의 길이

문제 해결

def solution(board, k):
    answer = 0
    n, m = len(board), len(board[0])
    for i in range(n):
        for j in range(m):
            if i+j <= k:
                answer += board[i][j]
            else:
                break
    return answer

 

주석: 인덱스 합(i+j)이 k를 초과하면 해당 행의 나머지 요소들도 조건을 만족할 수 없으므로 break를 통해 불필요한 안쪽 루프 실행을 방지하여 연산 효율을 높인다.

반응형