미로 탈출 최소 이동

레벨 D4 · 코딩 · JavaScript · 목표 시간 6분 · 게시일 2026-10-03

.(빈칸)과 #(벽)으로 이루어진 문자열 배열 grid가 주어진다. 왼쪽 위 칸에서 출발해 상하좌우로 한 칸씩, 빈칸으로만 움직여 오른쪽 아래 칸까지 가는 최소 이동 횟수를 반환하시오. 갈 수 없거나 출발 칸이나 도착 칸이 벽이면 -1을 반환한다. 격자가 한 칸뿐이고 빈칸이면 0이다.

격자는 최대 300 × 300이다. 가능한 길을 모두 따라가 보는 방법으로는 시간 안에 끝나지 않고, 실행 환경의 콜 스택이 작으니 아주 깊은 재귀는 피하시오.

예제

solve(["..#","#..","#.."])
solve([".#","#."])
solve(["."])

D4 레벨의 다른 문제 · 코딩 문제 목록