최대 1 분 소요

https://school.programmers.co.kr/learn/courses/30/lessons/250125

주어진 보드에서 현재 위치에서 상, 하, 좌, 우의 칸 색깔이 현재 위치의 색깔과 같은 색으로 칠해진 칸의 개수를 리턴하는 코드를 작성하는 문제이다.

위 링크에 주어진 의사코드를 바탕으로 코드를 작성했다..

내 풀이

def solution(board, h, w):
    answer = 0
    dx = [0, 1, 0, -1]
    dy = [1, 0, -1, 0]
    
    len_board = len(board)
    h_check, w_check = h, w
    cur = board[h][w]
    
    for i in range(4) :
        h_check += dx[i]
        w_check += dy[i]
        if 0 <= h_check < len_board and 0 <= w_check < len_board :
            if cur == board[h_check][w_check] :
                answer += 1
        h_check, w_check = h, w
            
    return answer

댓글남기기