연습장
15. 이웃한 칸 본문
내가 고른 칸과 상하좌우 4칸의 색 중에서 몇개가 같은지를 알아보는 문제이다.
board 는 다음과 같이 2중 배열로 주어진다.
[["blue", "red", "orange", "red"],
["red", "red", "blue", "orange"],
["blue", "orange", "red", "red"],
["orange", "orange", "red", "blue"]]
board[h][w] 의 색을 확인하고
board[h-1][w]
board[h+1][w]
board[h][w+1]
board[h][w-1]
각각의 색을 확인해서 갯수를 알려주면 된다.
이렇게 테두리 값을 고를 경우에 대해서 예외 처리가 필요하다.
# 선택한 기준 색
color = board[h][w]
if h-1 >= 0 : # 상
print(board[h-1][w])
if h+1 <= len(board): # 하
print(board[h+1][w])
if w-1 >= 0: # 좌
print(board[h][w-1])
if w+1 <= len(board[0]): # 우
print(board[h][w+1])
def solution(board, h, w):
answer = 0
color = board[h][w]
if h-1 >= 0 : # 상
if color == (board[h-1][w]):
answer += 1
if h+1 <= len(board)-1: # 하
if color == (board[h+1][w]):
answer += 1
if w-1 >= 0: # 좌
if color == (board[h][w-1]):
answer += 1
if w+1 <= len(board[0])-1: # 우
if color == (board[h][w+1]):
answer += 1
return answer
'프로그래머스 > 1단계' 카테고리의 다른 글
17. 키패드 누르기 (0) | 2024.01.19 |
---|---|
16. 크레인 인형뽑기 게임 (0) | 2024.01.17 |
14. 둘만의 암호 (0) | 2024.01.17 |
13. 실패율 (0) | 2023.12.16 |
12. 덧칠하기 (0) | 2023.12.16 |