목록2024/06/29 (1)
자바칩
[백준 / Java] 16953: A → B (BFS)
난이도: Silver 2문제: https://www.acmicpc.net/problem/16953 문제정수 A를 B로 바꾸려고 한다. 가능한 연산은 다음과 같은 두 가지이다.2를 곱한다.1을 수의 가장 오른쪽에 추가한다. A를 B로 바꾸는데 필요한 연산의 최솟값을 구해보자.입력첫째 줄에 A, B (1 ≤ A 출력A를 B로 바꾸는데 필요한 연산의 최솟값에 1을 더한 값을 출력한다. 만들 수 없는 경우에는 -1을 출력한다. 이 문제는 그리디 알고리즘으로 분류가 되어있으나, 나는 BFS로 풀었다.흔한 BFS 문제들과 다른 점은 주어진 수의 최대 범위가 10억으로 너무 커서 이 값으로 배열 인덱스를 초기화할 경우 메모리 초과 예외가 발생한다.그러므로 graph와 visited를 배열로 만들기보다는, graph는..
알고리즘/백준
2024. 6. 29. 07:07