inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

영리한 프로그래밍을 위한 알고리즘 강좌

Recursion의 응용 - 미로찾기 1

Python 으로 구현해보았습니다.

257

SEONGMOOK LIM

작성한 질문수 1

1

class Maze:
    def findMazePath(self, x, y):
        if (x < 0 or y < 0 | x >= N or y >= N): #지도 범위를 넘어선곳
            return False

        elif (maze[x][y] != PATHWAY_COLOR): # White 0 #벽
            return False

        elif (x == N - 1 & y == N - 1): # 최종 목적지
            maze[x][y] = PATH_COLOR #Green 3
            return True

        else:
            maze[x][y] = PATH_COLOR #Green 3 # 계속 갈 수 있는 길인지, 막힌 길인지 파악이 안된 길. 일단 가보는 길
            if (self.findMazePath(x - 1, y) | self.findMazePath(x, y + 1) | \
                self.findMazePath(x + 1, y) | self.findMazePath(x, y - 1)):
                return True
            maze[x][y] = BLOCKED_COLOR #Red 2 $ 위의 if 구문에서 Return 받아서 가면 안되는 길 
            return False

if __name__ == '__main__':
    N = 8
    maze = [[0, 0, 0, 0, 0, 0, 0, 1],
            [0, 1, 1, 0, 1, 1, 0, 1],
            [0, 0, 0, 0, 0, 0, 0, 1],
            [0, 1, 0, 0, 1, 1, 0, 0],
            [0, 1, 1, 1, 0, 0, 1, 1],
            [0, 1, 0, 0, 0, 1, 0, 1],
            [0, 0, 0, 1, 0, 0, 0, 1],
            [0, 1, 1, 1, 0, 1, 0, 0]]

    PATHWAY_COLOR = 0 # 원래 길
    WALL_COLOR = 1 # 벽
    BLOCKED_COLOR = 2 # 이 길로 계속 가면 가다 도중에 막히는 길
    PATH_COLOR = 3 # 이 길로 계속 가면 끝까지 갈 수 있는 길

    s = Maze()
    print(maze)
    s.findMazePath(0, 0)
    print(maze)

algorithm

답변 0

1강 PDF 파일 오류

0

875

1

1강 pdf파일

0

559

0

혹시 코드로 구현하는 법은 안가르쳐 주시나요>?

-2

635

0

허프만 코딩에서 오타인가요?

0

363

0

강의 노이즈가 너무 심해요

0

401

0

왜 첫 글자를 떼놔야 하는지

0

349

0

red-black tree에 대한 질문입니다.

1

389

1

순차탐색: 다른버전 자바 코드 작성하는 중에 작성이 잘 안되서 질문드립니다.

0

309

1

compareTo 함수에 대한 질문입니다.

0

246

0

Anlatım dakika süreleri

0

232

0

강의자료 필요하신 분들은 여기 링크 참고해보세요.

32

559

3

binary search에서 질문

0

338

1

pdf에 있는 Excercise 답은 없나요?

4

260

0

pdf

0

273

0

include 배열에 대해 궁금한점이 있습니다!

0

228

0

연결요소

0

233

0

heap 정렬에서 배열 인덱스

0

229

0

Java에서의 정렬에서 정렬된 값 출력 방법

0

377

2

MAX-HEAPIFY(A,1)

0

365

1

printMaze()는 어떻게 만들어야 할까요?

0

480

3

동서남북 순서

1

248

1

해당 강좌에 대한 pdf는 다운받지 못하는건가요 ??

0

281

1

이 강의 ppt 자료는 다운받을 수 없나요?

0

204

0

C언어로 quicksort 구현 해봤는데 안되네요ㅠㅜ 왜 그런걸까요?

0

225

0