백준_1463 1로 만들기 (DP)Algorithm/Algorithm 문제2024. 4. 11. 11:41
Table of Contents
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class BJ_1463_1로만들기 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int[] d = new int[n+1];
d[1] = 0;
for (int i=2; i<n+1; i++) { //3가지 연산의 경우 중 최소값을 구해야한다
d[i] = d[i-1] + 1;
if (i%3 == 0) {
d[i] = Math.min(d[i], d[i/3] + 1);
}
if (i%2 == 0) {
d[i] = Math.min(d[i], d[i/2] + 1);
}
}
System.out.println(new StringBuilder().append(d[n]));
}
}
'Algorithm > Algorithm 문제' 카테고리의 다른 글
백준_2193 이친수 (DP) (0) | 2024.04.14 |
---|---|
백준_14501 퇴사 (DP) (0) | 2024.04.13 |
백준_1947 선물 전달 (조합 순열) (0) | 2024.04.08 |
백준_1256 사전 (조합 순열) (0) | 2024.04.08 |
백준_1722 순열의 순서 (조합 순열) (0) | 2024.04.06 |
@kjyyjk :: 녕의 학습 기록
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!