Skip to content

[PGS] 이웃한 칸 - #81

Open
been12151 wants to merge 18 commits into
mainfrom
week4/adjacent-cells
Open

[PGS] 이웃한 칸#81
been12151 wants to merge 18 commits into
mainfrom
week4/adjacent-cells

Conversation

@been12151

Copy link
Copy Markdown
Owner

🍪 문제 이름

Resolve: 이웃한 칸

🍊 문제 정의

input

  • board : 문자열로 이루어진 N×N 크기의 2차원 배열
  • h : 기준 칸의 행 인덱스
  • w : 기준 칸의 열 인덱스

output

  • board[h][w]와 상하좌우로 이웃한 칸 중 같은 문자를 가진 칸의 수

예시

board h w result
["ABCD", "BQSC", "CDEP", "FFFF"] 1 1 0
["AA", "AA"] 1 1 2
["CODE", "WARS"] 0 1 0

🍑 알고리즘 설계

상하좌우 방향을 dx, dy 배열로 정의하고 4방향을 순회.
각 방향의 좌표가 보드 범위 내에 있고, 해당 칸의 문자가 기준 칸과 같으면 count 증가.

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

    return count

🥝 최악 수행 시간 복잡도

  • O(1)
  • 항상 4방향만 체크하므로 입력 크기와 무관하게 고정

🍰 특이 사항 (Optional)

없음

@been12151 been12151 self-assigned this Jul 13, 2026
@been12151 been12151 linked an issue Jul 14, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[PGS] 이웃한 칸 / level 1

2 participants