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에 추가하여 반환했습니다.

 

 

참고 ❗

 

 

[Java] toCharArray() 메소드 알아보기 (문자열 ➡️ char배열)

Java를 다루다 보면 문자열의 각 문자를 개별적으로 처리하거나 저장해야 하는 상황이 종종 발생합니다. 예를 들어, 문자열을 한 글자씩 분리하여 특정 작업을 수행하거나, 문자열의 일부를 수

pixx.tistory.com

 

[JAVA] 입출력, BufferedReader, StringTokenizer, StringBuilder 알아보기

Java로 코딩테스트를 보거나 입력을 사용해야 할 때 Scanner 클래스를 사용하면 편리하지만 속도가 느리다는 단점이 있습니다. 그렇기 때문에 속도가 빠른 BufferReader 클래스를 사용을 하면 시간복

pixx.tistory.com