
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
public class math2 {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer stringTokenizer =
new StringTokenizer(bf.readLine());
int N = Integer.parseInt(stringTokenizer.nextToken());
int B = Integer.parseInt(stringTokenizer.nextToken());
boolean end = false;
List<Integer> list = new ArrayList<>();
do {
if (N < B) end = true;
int value = N % B;
list.add(value);
N = N / B;
} while(!end);
int[] array = new int[list.size()];
for (int i = list.size() - 1; i >= 0; i--) {
array[i] = list.get(i);
if (list.get(i) >= 10) {
array[i] += 55;
}
}
for (int i = array.length - 1; i >= 0; i--) {
if (array[i] >= 10) System.out.print((char) array[i]);
else System.out.print(array[i]);
}
}
}
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer stringTokenizer =
new StringTokenizer(bf.readLine());
int N = Integer.parseInt(stringTokenizer.nextToken()); //10진법 수
int B = Integer.parseInt(stringTokenizer.nextToken()); //B진법
boolean end = false;
List<Integer> list = new ArrayList<>();
do {
if (N < B) end = true;
int value = N % B;
list.add(value);
N = N / B;
} while(!end);
int[] array = new int[list.size()];
for (int i = list.size() - 1; i >= 0; i--) {
array[i] = list.get(i);
if (list.get(i) >= 10) {
array[i] += 55;
}
}
for (int i = array.length - 1; i >= 0; i--) {
if (array[i] >= 10) System.out.print((char) array[i]);
else System.out.print(array[i]);
}
10진법을 B진법으로 변환하면 나머지를 구한 후 반대로 값을 도출해야 함(첫 번째 for문)

도출한 결과는 동적 배열 array에 삽입
