Notice
Recent Posts
Recent Comments
Link
«   2025/02   »
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
Tags
more
Archives
Today
Total
관리 메뉴

코드와이

[BAEKJOON] 1463. 1로 만들기 본문

acmicpc

[BAEKJOON] 1463. 1로 만들기

코드와이 2021. 2. 17. 13:40

 

문제링크

www.acmicpc.net/problem/1463

 

1463번: 1로 만들기

첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다.

www.acmicpc.net

 

package acmicpc.Silver3;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class ㅁ1로_만들기 {
	static int ans;
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int n = Integer.parseInt(br.readLine());
		
		ans = Integer.MAX_VALUE;
		func(n, 0);
		
		System.out.println(ans);
	}
	public static void func(int n, int cnt) {

		if (n == 1) {
			ans = Math.min(ans, cnt);
			return;
		}
		if (cnt >= ans) return;
		int tmp;
		if( n % 3 == 0) {
			tmp = n / 3;
			func(tmp, cnt + 1);
		}
		if (n % 2 == 0) {
			tmp = n / 2;
			func(tmp, cnt + 1);
		}
		if (n > 1){
			tmp = n - 1;
			func(tmp, cnt + 1);
		}
	}
}

'acmicpc' 카테고리의 다른 글

[BAEKJOON] 11399. ATM  (0) 2021.02.18
[BAEKJOON] 9095. 1, 2, 3 더하기  (0) 2021.02.17
[BAEKJOON] 1931. 회의실 배정  (0) 2021.02.16
[BAEKJOON] 1262. 알파벳 다이아몬드  (0) 2021.02.15
[BAEKJOON] 1269. 대칭 차집합  (0) 2021.02.15