inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

박준모님의 게시글

박준모 박준모

@tangtang2194797

수강평 작성수
-
평균평점
-

게시글 2

질문&답변

안전영역(BFS)

from collections import deque n = int ( input ( "n: " )) a = [[ 6 , 8 , 2 , 6 , 2 ], [ 3 , 2 , 3 , 4 , 6 ], [ 6 , 7 , 3 , 3 , 2 ], [ 7 , 2 , 5 , 3 , 6 ], [ 8 , 9 , 5 , 2 , 7 ]] dq = deque() dx = [ - 1 , 0 , 1 , 0 ] dy = [ 0 , 1 , 0 , - 1 ] res = [] for h in range ( 1 , 101 ): ch = [[ 0 ] * n for _ in range (n)] cnt = 0 for i in range (n): for j in range (n): if ch[i][j] == 0 and a[i][j] > h: ch[i][j] = 1 dq.append((i,j)) while dq: tmp = dq.popleft() for k in range ( 4 ): x = tmp[ 0 ] + dx[k] y = tmp[ 1 ] + dy[k] if 0 x n and 0 y n and a[x][y] > h and ch[x][y] == 0 : ch[x][y] = 1 dq.append((x,y)) cnt += 1 if cnt > 0 : res.append(cnt) print ( max (res)) 답변 감사합니다. ch[x][y] == 0 을 추가하니까 되네요.

좋아요수
0
댓글수
2
조회수
165