You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
문제 링크
https://www.acmicpc.net/problem/2178
문제 조건
0과 1로 이루어진 N x M 크기의 map이 주어질 때 (1, 1)에서 출발해서 (N, M) 위치로 이동해야 한다.
1은 이동할 수 있는 칸이고, 0은 이동할 수 없는 칸일 때 지나야 하는 최소의 칸 수를 구하라
아이디어
시작점도 정해져있고, 도착점도 정해져 있으므로 BFS를 진행하면서 dist 배열을 통해 최소 이동 횟수를 구하면 된다.
시간 복잡도
정점: O(NM)
간선: O(NM*4)
따라서 시간, 공간 복잡도는 모두 O(N*M)으로 시간 안 풀이가 가능하다.
구현
사실 visit 배열 없이 dist 배열만으로도 방문했는 지 알 수 있다. dist 배열을 처음에 -1로 초기화했었기 때문에 dist값이 -1인 경우 방문하지 않았다고 생각하면 된다.
Beta Was this translation helpful? Give feedback.
All reactions