알고리즘
- 미로에서의 현재 위치와 이동 횟수를 구하기 위해서
Node
클래스를 정의한다. - 0번 이동한 상태에서 0번 위치에서 시작할 때 만들어지는 객체로 BFS를 시작한다.
- 현재 위치
idx
에서 한번에 최대arr[idx]
만큼 이동할 수 있으므로 각각의 경우에 대해서 조건에 부합하는지 확인하고 탐색한다. - 조건에 부합하면 방문처리해주고 다음 방문할 위치
idx
와time+1
을 객체로 만들어서 큐에 넣어준다. - 큐에서 꺼낸 객체의 번호가 끝 번호라면, 해당 객체의
time
을 출력하고 종료한다.
소스코드
문제링크
11060번: 점프 점프
재환이가 1×N 크기의 미로에 갇혀있다. 미로는 1×1 크기의 칸으로 이루어져 있고, 각 칸에는 정수가 하나 쓰여 있다. i번째 칸에 쓰여 있는 수를 Ai라고 했을 때, 재환이는 Ai이하만큼 오른쪽으로
www.acmicpc.net
'Coding Test > Solved' 카테고리의 다른 글
[BOJ] 백준 2210번 - 숫자판 점프(with Java) (0) | 2022.06.30 |
---|---|
[BOJ] 백준 4963번 - 섬의 개수(with Java) (0) | 2022.06.30 |
[BOJ] 백준 2667번 - 단지번호붙이기(with Java) (0) | 2022.06.28 |
[BOJ] 백준 2606번 - 바이러스(with Java) (0) | 2022.06.28 |
[BOJ] 백준 18405번 - 경쟁적 전염(with Java) (0) | 2022.06.28 |
댓글