6055 : BFS 기초 (큐 활용)
•시간제한: 1.000 S
•메모리제한: 256 MB
•제출: 0
•통과: 0
•만든사람: suakii
문제 설명
N×M 격자에서 0은 이동 가능, 1은 벽이다. 시작점 (Sy, Sx)에서 도착점 (Ey, Ex)까지 상하좌우로 이동할 때 최소 이동 칸 수를 구하시오.
도달 불가능하면 -1을 출력한다.
[제약 조건]
• 격자 크기: $2 \le N, M \le 100$ (정수)
• 도달 불가능하면 -1을 출력합니다.
도달 불가능하면 -1을 출력한다.
[제약 조건]
• 격자 크기: $2 \le N, M \le 100$ (정수)
• 도달 불가능하면 -1을 출력합니다.
입력 설명
첫째 줄에 N, M (2 ≤ N, M ≤ 100).
다음 N줄에 격자 정보(0 또는 1, 공백 구분).
마지막 줄에 Sy Sx Ey Ex (0-indexed).
다음 N줄에 격자 정보(0 또는 1, 공백 구분).
마지막 줄에 Sy Sx Ey Ex (0-indexed).
출력 설명
최소 이동 칸 수 또는 -1.
입력 예시
COPY
복사되었습니다!
복사되었습니다!
5 5
0 0 0 0 0
0 1 1 0 0
0 0 0 1 0
0 1 0 0 0
0 0 0 0 0
0 0 4 4
출력 예시
COPY
복사되었습니다!
복사되었습니다!
8
도움
BFS는 최단 경로를 보장합니다. visited 배열로 재방문을 막아야 합니다.