강의

멘토링

커뮤니티

Inflearn Community Q&A

ksuk66030220's profile image
ksuk66030220

asked

Introduction to Python Algorithm Problem Solving (Coding Test Preparation)

16. Ladder Climb (DFS)

ch 를 굳이 만들어야 하는 이유를 잘 모르겠습니다.

Written on

·

173

0

arr = [list(map(int,input().split())) for _ in range(10)]

for i in range(10):
    if arr[9][i] == 2:
        start = i
        break

def dfs(r,c):
    if r == 0:
        print(c)
        return
    if 0<= c-1 and arr[r][c-1] == 1:
        arr[r][c-1] = 2
        dfs(r,c-1)
    elif c+1 < 10 and arr[r][c+1] == 1:
        arr[r][c+1] = 2
        dfs(r,c+1)
    elif 0<= r-1 and arr[r-1][c] == 1:
        arr[r-1][c] = 2
        dfs(r-1,c)

dfs(9,start)

 안녕하세요 선생님 질문있어서 글 남깁니다!

 선생님의 코드처럼 ch를 만드는 경우 메모리를 더 잡아먹을 것 같은데, 방문한 board의 값을 1이 아닌 값으로 바꾸면 메모리적으로 더 효율적이지 않을까요?

 혹시 문제가 있을까요

python코테 준비 같이 해요!

Answer 1

0

codingcamp님의 프로필 이미지
codingcamp
Instructor

네. ch리스트 없이 board의 값을 가지고 해도 됩니다. 

ksuk66030220's profile image
ksuk66030220

asked

Ask a question