반응형
🔺 문제
코드트리 | 코딩테스트 준비를 위한 알고리즘 정석
국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.
www.codetree.ai
🔺 코드
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
import java.util.*;
import java.io.*;
public class Main {
private static final int MAX_DIGIT = 20;
private static int a, b, cnt;
private static String n;
private static int[] digits = new int[MAX_DIGIT];
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
a = Integer.parseInt(st.nextToken());
b = Integer.parseInt(st.nextToken());
n = br.readLine();
// 1. a진수로 표현된 n을 십진수로 변환
int num = 0;
for(int i = 0 ; i < n.length() ; i++) {
num = num * a + (n.charAt(i) - '0');
}
//System.out.println(num);
// 2. 10진수로 표현된 n을 b진수로 변환
cnt = 0;
while(true) {
if(num < b) {
digits[cnt++] = num;
break;
}
digits[cnt++] = num % b;
num /= b;
}
// 진수 배열 뒤집어 출력하기
StringBuilder sb = new StringBuilder();
for(int i = cnt - 1 ; i >= 0 ; i--)
sb.append(digits[i]);
System.out.println(sb.toString());
}
}
|
cs |
🧩 해결 아이디어
1. 숫자 n을 10진수로 변환
2. 1에서 변환한 십진수를 b진수로 변환
💬 느낀 점
진수 변환하는 것의 집합체 문제.... 굿!
1회독 | 2회독 | 3회독 | 4회독 | 5회독 |
V |
반응형
'코테 > 코드트리' 카테고리의 다른 글
[코드트리/NOVICE MID] 최대로 겹치는 구간 (JAVA) (0) | 2023.10.22 |
---|---|
[코드트리/NOVICE MID] 블럭쌓는 명령2 (JAVA) (0) | 2023.10.22 |
[코드트리/NOVICE MID] 2진수로 변환하기 (JAVA) (0) | 2023.09.28 |
[코드트리/NOVICE MID] 십진수와 이진수 2 (JAVA) (0) | 2023.09.28 |
[코드트리/NOVICE MID] 10진수로 변환하기 (JAVA) (0) | 2023.09.28 |