반응형
2745번: 진법 변환
B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를
www.acmicpc.net
뒷 자리 문자부터 해당 진법으로 변환해 더해주는 계산을 하였습니다.
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int result = 0;
int[] base = new int[127];
for (int i = '0'; i <= '9'; i++)
base[i] = i - '0';
for (int i = 'A'; i <= 'Z'; i++)
base[i] = i - 'A' + 10;
char[] N = st.nextToken().toCharArray();
int B = Integer.parseInt(st.nextToken());
for (int i = 0; i < N.length; i++)
result += Math.pow(B, i) * base[N[N.length - i - 1]];
System.out.print(result);
}
}
반응형
'Algorithm' 카테고리의 다른 글
백준 2089번 -2진수 [ Java ] (0) | 2021.03.31 |
---|---|
백준 17087번 숨바꼭질 6 [ Java ] (0) | 2021.03.31 |
백준 11005번 진법 변환 2 [ Java ] (0) | 2021.03.31 |
백준 17103번 골드바흐 파티션 [ Java ] (0) | 2021.03.29 |
백준 1212번 8진수 2진수 [ Java ] (0) | 2021.03.29 |