def solution(board, h, w):
    answer = 0
    n = len(board)
    dh = [0, 1, -1, 0]
    dw = [1, 0, 0, -1]
    for i in range(4):
        h_check = h + dh[i]
        w_check = w + dw[i]
        if h_check >= 0 and h_check < n and w_check >= 0 and w_check < n:
            if board[h][w] == board[h_check][w_check]:
                answer += 1
    return answer

 

유형 : 구현

풀이 시간 : 10분

 

이 문제는 굉장히 쉬운 문제였지만,

 

if h_check >= 0 and h_check < n and w_check >= 0 and w_check < n:

 

이 부분에서 처음에 h_check만 체크해서 틀렸다.

제발 이런 부분 놓치지 말고 꼼꼼히 살펴보자. 

그리고 구현 시에, 스스로 힘으로 디버깅하기. 이번엔 그래도 스스로 찾아냈다. ★ 

 

그리고 이런 식으로 체스판 문제가 나오면 방향을 배열화해서 순회하는 방법으로 풀이하자. 

* 인덱스 범위 주의 * 

복사했습니다!