물류 창고 바닥은 격자로 나뉘어 있고, 배송 로봇은 왼쪽 위 칸에서 출발해 오른쪽 아래 칸까지 이동합니다. 로봇은 한 번에 오른쪽 또는 아래쪽으로만 한 칸 움직입니다.
창고 도면 warehouse가 2차원 배열로 주어집니다.
0: 지나갈 수 있는 통로1: 적재물이 쌓여 있어 지나갈 수 없는 칸출발 칸에서 도착 칸까지 가는 서로 다른 경로의 수를 반환하는 solution(warehouse)를
구현하세요. 갈 수 있는 경로가 없으면 0을 반환합니다.
출발 칸이나 도착 칸 자체가 막혀 있는 경우도 경로가 없는 것으로 봅니다.
| warehouse | 반환값 | 설명 |
|---|---|---|
[[0,0,0],[0,1,0],[0,0,0]] |
2 |
가운데가 막혀 위쪽·왼쪽 가장자리를 도는 두 경로 |
[[0,1],[0,0]] |
1 |
아래로 간 뒤 오른쪽으로 |
[[0,0,0],[1,1,1],[0,0,0]] |
0 |
가운데 줄이 완전히 막힘 |
[[0,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,0]] |
4 |
적재물 두 곳을 피해 가는 경로 4가지 |
시간 복잡도 목표: O(행 수 × 열 수)
▶ 실행은 기록 없이 채점만, 제출은 결과가 진행률·오답노트에 기록됩니다.