https://school.programmers.co.kr/learn/courses/30/lessons/154538#qna
나의풀이
import java.util.*;
class Solution {
public int solution(int x, int y, int n) {
int[] dp = new int[1000001];//연산 횟수를 저장하기 위한 배열
Arrays.fill(dp,-1);
dp[x]=0;
for(int i=x; i<=y; i++){
if(dp[i] != -1){
if(i+n <= y){
if(dp[i+n] == -1){
dp[i+n] = dp[i]+1;
}else{
dp[i+n] = Math.min(dp[i+n], dp[i]+1);
}
}
if(i*2 <= y){
if(i*2 <= y){
if(dp[i*2] == -1){
dp[i*2] = dp[i]+1;
}else{
dp[i*2] = Math.min(dp[i*2], dp[i]+1);
}
}
}
if(i*3 <= y){
if(i*3 <= y){
if(dp[i*3] == -1){
dp[i*3] = dp[i]+1;
}else{
dp[i*3] = Math.min(dp[i*3], dp[i]+1);
}
}
}
}
}
return dp[y];
}
}
'코테풀이' 카테고리의 다른 글
[프로그래머스] n^2 배열 자르기 java 풀이(LEVEL2) (0) | 2023.05.20 |
---|---|
[프로그래머스] 택배상자 java 풀이 (LEVEL2) (0) | 2023.05.20 |
[프로그래머스] 뒤에 있는 큰 수 찾기 java (LEVEL2) (0) | 2023.05.11 |
[프로그래머스] 연속 부분 수열 합의 개수 java (LEVEL2) (0) | 2023.05.11 |
[프로그래머스] 네트워크 java (LEVEL3) (0) | 2023.04.30 |