벽 부수고 이동하기
-
[Python] 백준 2206 벽 부수고 이동하기알고리즘/문제풀이 2021. 7. 17. 21:12
1. 문제 링크 https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net 2. 문제 요약 최단 경로 구하기 문제 → bfs 탐색 벽을 1개까지만 부수고 이동 가능 → 최단경로에서 이 조건으로 어려워짐. 3. 아이디어 정리 아이디어 1. 벽을 모두 부수면서 모든 경우의 수를 확인 ⇒ 시간 초과 아이디어 2. 벽을 부순 상태와 부수지 않은 상태의 visit 값을 분리하기 벽을 부순 상태와 부수지 않은 상태 분리 visit_0 = [..