inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

8. 사과나무(BFS : Breadth First Search)

저는 이렇게도 풀이를 해봤습니다!

225

김태희
0

L변수를 사용하지 않고, cur[0]이 0이 되면 중단하도록 했습니다! 

문제에 제시된 상황에서는 다 정상적으로 작동했습니다만 혹시라도 제 코드 중에서 문제가 생길 것 같은 부분이 있다면 댓글에 달아주시면 감사하겠습니다!

while dq:

    cur = dq.popleft()

    if cur[0] == 0:

        break

    for k in range(4):

        xx = cur[0] + dx[k]

        yy = cur[1] + dy[k]

        if 0<=xx<m and 0<=yy<m and ch[xx][yy] == 0:

            tot += board[xx][yy]

            ch[xx][yy] = 1

            dq.append((xx,yy))

답변 0