-
https://www.acmicpc.net/problem/16953
16953번: A → B
첫째 줄에 A, B (1 ≤ A < B ≤ 109)가 주어진다.
www.acmicpc.net
https://github.com/JUNGSOONIL/JAVA/blob/main/BAEKJOON%2016953
GitHub - JUNGSOONIL/JAVA: JAVA 소스 코드
JAVA 소스 코드. Contribute to JUNGSOONIL/JAVA development by creating an account on GitHub.
github.com
해당 문제는 A, B가 주어졌을 때 아래 연산을 통해 B까지 몇 번 만에 갈 수 있는지 구하는 문제다
1. 2를 곱한다
2. 10을 곱한 뒤 1을 더한다.
bfs를 이용해 문제를 해결했으며, 처음에 배열을 통해 연산 횟수를 관리하려 했으나, 해당 문제가
배열의 범위를 넘어간다는 것을 실행을 한번 해보면서 알게 되었고
그냥 큐에다가 long형 배열을 넣어주는 방식으로 문제를 해결했다.
A 값부터 시작하며 위의 연산들을 진행하고 만약 연산 결과가 B 값을 넘지 않을 때만
큐에 현재 연산 결과와 연산 횟수+1을 넣어주는 방식으로 진행하고
이후 큐에서 데이터를 가져왔을 때 해당 값이 B와 같은지 비교하는 방식으로
문제를 해결하였다.
728x90'알고리즘 > Baekjoon' 카테고리의 다른 글
Baekjoon 11725 트리의 부모 찾기 JAVA (0) 2021.11.13 Baekjoon 14938 서강그라운드 JAVA (0) 2021.11.13 Baekjoon 2193 이친수 JAVA (0) 2021.11.13 Baekjoon 11404 플로이드 JAVA (0) 2021.11.13 Baekjoon 17144 미세먼지 안녕! JAVA (0) 2021.11.13 댓글