• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

return y는 안되는 이유가 궁금합니다

22.08.11 14:24 작성 조회수 120

0

안녕하세요 강사님. 질문이 있어서 남기겠습니다.

혹시 여기서 print(y)로는 7이 반환되는데 return y를 하면 왜 None이 반환되나요?

답변 3

·

답변을 작성해보세요.

0

안녕하세요^^

제 컴퓨터에서는 답이 잘 나옵니다.

0

조현수님의 프로필

조현수

질문자

2022.08.19

board = [list(map(int, input().split())) for _ in range(10)]  #10x10 2차원 리스트

check = [[0] * 10 for _ in range(10)]  #방문 체크 리스트

 

dy = [-1,1]  #좌우만 확인하면돼

for i in range(10):

    if board[9][i] == 2:  #도착지점이라면

        x, y = 9, i

        break

 

res = 0

def DFS(x,y):   #행, 열

    check[x][y] = 1 #방문처리

    if x == 0:   #시작지점 도달. 종료조건

        print(y)

#return y

    else:     #y-1, y+1에 대한 조건부터 먼저 나왔어야해. 인덱스 오류를 막기 위해서

        if y-1>=0 and board[x][y-1] == 1 and check[x][y-1] == 0:  

            #인덱스 오류가 아니면서 첫 방문이면서 좌에 사다리 있으면 그쪽으로.

            DFS(x, y-1)

        elif y+1 < 10 and board[x][y+1] == 1 and check[x][y+1] == 0:

            DFS(x, y+1)

        else:

            DFS(x-1,y)

DFS(x,y)

 

여기서 왜 return y는 안되는 것인지 궁금합니다

0

안녕하세요^^

전체 코드를 복사 붙여넣기 할 수 있도록 텍스트로 주시면 제가 실행해 보겠습니다.