728x90
▶ BufferedReader & StringBuilder&toCharArray 활용한 간단한 문제가 있어 정리해보고자 합니다.
문제설명
입력 & 출력
나의 풀이
이번 문제는 간단히 8진수 ▶ 2진수로 변환하면 되는 문제입니다.
먼저 빠른 입력을 위해서 BufferedReader 클래스를 사용해서 입력을 받아주고, 입력을 toCharArray() 메서드를 사용하여 문자열 입력을 문자로 나눠줍니다.
그리고 ch배열의 길이만큼 반복하는 for문을 선언하고, 각 요소를 숫자로 변환해 주고, toString() 메서드를 사용하여 2진수로 변환해줍니다.
그러면 입력이 3 1 4로 주어졌을 때
- 3 ➡ 11
- 1 ➡ 1
- 4 ➡ 100
위와 같이 2진수로 변환이 됩니다. 그러나 이 상태에서 각 요소를 더하면 "11110"와 같이 나오기 때문에 작업을 하나 해줘야 합니다.
첫 번째 요소를 제외하고는 3자리로 맞춰줘야 하기 때문에 이 작업을 16~21번째 줄에서 길이와 인덱스를 체크하여 "0"이나 "00"을 추가하여 3자리로 맞춰야 합니다.
마지막으로 StringBuilder에 추가하여 반환했습니다.
참고 ❗
'Coding Test > 백준' 카테고리의 다른 글
[백준] 저항 (BufferedReader, HashMap, 1076번, Java) (0) | 2024.06.05 |
---|---|
[백준] ROT13 (BufferedReader, StringBuilder, isLetter, 아스키 코드, 11655번, Java) (0) | 2024.06.04 |
[백준] 단어 뒤집기 (BufferedReader, StringBuilder, 9093번, Java) (0) | 2024.06.02 |
[백준] Hashing (BufferedReader, 모듈러 연산, 15829번, toCharArray(), Java) (1) | 2024.06.02 |
[백준] 수학은 비대면강의입니다 (BufferedReader, 브루트 포스, 19532번, Java) (0) | 2024.06.02 |