-
https://www.acmicpc.net/problem/13549
13549번: 숨바꼭질 3
수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일
www.acmicpc.net
https://github.com/JUNGSOONIL/JAVA/blob/main/BAEKJOON%2013549
GitHub - JUNGSOONIL/JAVA: JAVA 소스 코드
JAVA 소스 코드. Contribute to JUNGSOONIL/JAVA development by creating an account on GitHub.
github.com
해당 문제는 수빈이와 동생의 위치가 주어졌을 때 최단시간 안에 수빈이가 동생으로 가는
시간을 구하는 문제다.
조건으로는 수빈이는 1초 후 x-1 또는 x+1로 이동 가능하며 0초 후 2*x로 이동 가능하다.
예전에 숨바꼭질 1을 풀었던 적이 있고, 당시는 bfs를 이용하는데
일반 큐를 사용했지만 이번에는 우선순위 큐를 사용해서 문제를 해결했다.
PriorityQueue를 사용하기 위해 데이터를 저장할 클래스를 하나 선언해주었고,
입력 처리를 한 뒤 bfs를 돌려 문제를 해결했다.
728x90'알고리즘 > Baekjoon' 카테고리의 다른 글
Baekjoon 1316 그룹 단어 체커 JAVA (0) 2021.12.02 Baekjoon 11659 구간 합 구하기 4 JAVA (0) 2021.11.30 Baekjoon 1406 에디터 JAVA (0) 2021.11.28 Baekjoon 2776 암기왕 JAVA (0) 2021.11.27 Baekjoon 4949 균형잡힌 세상 JAVA (0) 2021.11.26 댓글