알고리즘 문제

[Implementation] boj 1212 8진수 2진수 java

민돌v 2021. 7. 31. 13:57
728x90

8진수 2진수 성공

 

시간 제한메모리 제한제출정답맞은 사람정답 비율
1 초 256 MB 24981 7713 6298 33.726%

문제

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

입력

첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다.

출력

첫째 줄에 주어진 수를 2진수로 변환하여 출력한다. 수가 0인 경우를 제외하고는 반드시 1로 시작해야 한다.

예제 입력 1 복사

314

예제 출력 1 복사

11001100

package implementation;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class boj1212_8진수2진수 {
	
	static String number[];
	
	static StringBuilder sb = new StringBuilder();
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		number = br.readLine().split("");
		
		if(number[0].equals("0")) {
			System.out.print(0);
			return;
		}
		
		for(String n : number) {
			change(Integer.parseInt(n));
		}
		
		String result = sb.toString();
		
		while(result.charAt(0) == '0') {
			result = result.substring(1,result.length());
		}
		System.out.println(result);
	}
 static void change(int a) {
		String temp = "";
		
		for(int i=0;i<3;i++) {
			temp=(a%2)+temp;
			a/=2;
		}
		
		sb.append(temp);
		
	}
}
반응형