티스토리 뷰
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* Created by kgh on 2018. 8. 18.
* Blog : http://kgh940525.tistory.com
* Github : http://github.com/kgh940525
시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 128 MB 49603 16098 10473 32.213%
문제
정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다.
X가 3으로 나누어 떨어지면, 3으로 나눈다.
X가 2로 나누어 떨어지면, 2로 나눈다.
1을 뺀다.
정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오.
입력
첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 자연수 N이 주어진다.
출력
첫째 줄에 연산을 하는 횟수의 최솟값을 출력한다.
예제 입력 1
2
예제 출력 1
1
예제 입력 2
10
예제 출력 2
3
힌트
10의 경우에 10 -> 9 -> 3 -> 1 로 3번 만에 만들 수 있다.
*
*/
public class Baekjoon_1463_BottomUp{
public static int[] D;
public static int make(int num){
// comment: D[1]은 최소값인 0 으로 두고시작하기
D[1]=0; // comment: 제일 작은문제라고생각
// comment: 2부터 큰 문제 num까지 값들을 비교해가면서 bottom-up방식이므로
for(int i=2; i<num; i++){
// comment: N-1로 만드는경우
D[i] = D[i-1] + 1;
// comment: N/3로 만드는경우
if(i % 3 == 0 && D[i] > D[i/3] + 1){
D[i] = D[i/3]+1;
}
// comment: N/2로 만드는경우
if(i % 2 == 0 && D[i] > D[i/2] + 1){
D[i] = D[i/2]+1;
}
}
return D[num];
}
public static void main(String args[]) throws IOException {
// comment: input
int num;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
num = Integer.parseInt(br.readLine());
D = new int[num+1];
System.out.println(make(num));
}
}
'Algorithm' 카테고리의 다른 글
[알고리즘] Diamond-Star(다이아몬드만들기) (0) | 2018.08.19 |
---|---|
[알고리즘] 11726번 백준알고리즘 1로 만들기 2*n타일 (0) | 2018.08.19 |
[알고리즘] 1463번 백준알고리즘 1로 만들기(Recursive, Top-Down) - JAVA (0) | 2018.08.19 |
[알고리즘] 시간복잡도(Time Complexity)와 공간복잡도(Space Complexity) (0) | 2018.08.19 |
[알고리즘] 1937번 백준알고리즘 욕심쟁이 판다 (0) | 2018.08.13 |
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 개발하는 관광이
- 백준알고리즘
- db
- MVC
- programming
- Algorigm
- 복습
- 학교
- 텐서플로우
- node
- 코드엔진
- C언어
- BFS
- 알고리즘
- 리버싱
- Spring
- 안드로이드
- 백준
- 감자코딩
- 스프링
- TensorFlow
- C langauge
- 노드
- Controller
- node.js
- 프로그래밍
- Android
- 초보자를 위한 C언어 300제
- 감자개발자
- 머신러닝
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함