위 문제는 아래 링크의 책의 그리디 파트에 대한 문제입니다. 저작권 문제로 인해 문제를 올리지는 않겠습니다.ㅠㅠ
https://www.youtube.com/watch?v=eYtsGlYPilo
N이 K로 나누어 떨어지면 나눈다. 이후 count를 +1 한다.
N이 K로 나누어 떨어지지 않으면 N에서 1을 뺀다 (N - 1). 이후 count를 +1 한다.
N이 1이 될 때까지 1, 2번 과정을 반복한다.
import java.util.*;
import java.io.*;
public class Main {
static int N, K;
static int answer = 0;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
N = Integer.parseInt(st.nextToken());
K = Integer.parseInt(st.nextToken());
while (true) {
if (N == 1) {
break;
} else if (N % K == 0) {
N /= K;
answer++;
} else {
N -= 1;
answer++;
}
}
System.out.println(answer);
}
}