본문 바로가기

Android ᙏ̤̫͚/차근차근 JAVA

[백준 1373번] 2진수 8진수

 

www.acmicpc.net/problem/1373

 

1373번: 2진수 8진수

첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다.

www.acmicpc.net

 

[문제]

2진수가 주어졌을 때, 8진수로 변환하는 프로그램을 작성하시오.

 

<알고리즘 분류> 수학, 문자열, 사칙연산, 기초수학

 

[input]

첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다.

[output]

첫째 줄에 주어진 수를 8진수로 변환하여 출력한다.

 


 

 


 

[풀이 방법]

- BufferedReader+BufferedWriter 사용

  1. 2진수를 문자열로 입력받아 변수 S에 저장

  2. 문자열의 길이에 해당하는 크기의 int형 배열 binary 생성

  3. 문자열을 3으로 나누었을 때의 나머지가 0, 1, 2인 경우를 나누어 각각 진행

  4. 3개씩 묶어서 각각의 2진수가 8진수로 어떻게 표현되는지 whatNum(String s) 함수에 구현

  5. 해당 8진수를 배열 binary에 하나씩 저장

  6. 배열에 저장된 순서대로 변환한 8진수 출력

 


 

성공 코드

'Android ᙏ̤̫͚ > 차근차근 JAVA' 카테고리의 다른 글

[백준 2745번] 진법 변환  (0) 2021.02.20
[백준 9613번] GCD 합  (0) 2021.02.20
[백준 1212번] 8진수 2진수  (0) 2021.02.16
[백준 2089번] - 2진수  (0) 2021.02.15
[백준 1676번] 팩토리얼 0의 개수  (0) 2021.02.15