
난이도: ★☆☆☆☆ • solved on: 2025-07-05

자료구조
String, char[]알고리즘/기법
Integer.parseInt)핵심 키워드
- 문제 분해
- 입력으로 "숫자 문자열 N"과 "진법 B"가 들어옴 (예: "ZZZZZ 36")
- 해당 문자열을 B진법에서 10진법으로 변환해야 함
- 핵심 로직 흐름
- 입력을 공백 기준 분리 - arr[0]: 변환할 숫자 문자열, arr[1]: 진법 - Integer.parseInt(arr[0], arr[1])를 사용해 10진법으로 변환 - 변환 결과 출력- 예외 처리
- 진법이 10보다 크고, 알파벳이 포함된 입력도 고려
- Java에서 내장된 진법 변환 함수 사용 시 특별한 예외는 없음
import java.util.*;
import java.io.*;
class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] arr = br.readLine().split(" ");
System.out.println(Integer.parseInt(arr[0], Integer.parseInt(arr[1])));
}
}
- 시간 복잡도: O(L) (L은 입력 문자열의 길이)
- 공간 복잡도: O(1)
Integer.parseInt("문자열", 진법) 메서드를 사용하면 직접 진법 변환 알고리즘을 구현하지 않아도 쉽고 빠르게 처리 가능하다.BufferedReader를 사용하면 입력 속도가 빨라진다.