본문 바로가기
Programmers/Level. 0

[프로그래머스, Java] 이진수 더하기

by baebaebae 2022. 12. 26.
728x90

문제 설명

이진수를 의미하는 두 개의 문자열 bin1과 bin2가 매개변수로 주어질 때, 두 이진수의 합을 return하도록 solution 함수를 완성해주세요.

 

 

제한사항
  • return 값은 이진수를 의미하는 문자열입니다.
  • 1 ≤ bin1, bin2의 길이 ≤ 10
  • bin1과 bin2는 0과 1로만 이루어져 있습니다.
  • bin1과 bin2는 "0"을 제외하고 0으로 시작하지 않습니다.

 

입출력 예
bin1 bin2 result
"10" "11" "101"
"1001" "1111" "11000"

 

 

class Solution {
    public String solution(String bin1, String bin2) {
        String answer = "";
        
        int num1 = Integer.parseInt(bin1, 2);
        int num2 = Integer.parseInt(bin2, 2);

        answer = Integer.toBinaryString(num1 + num2);
        
        return answer;
    }
}

 

 

10진수 → 2진수, 8진수, 16진수 변환


10진수 → 2진수 : toBinaryString(int i)

     String binary = Integer.toBinaryString(i);

10진수 → 8진수 : toOctalString(int i)
     String octal = Integer.toOctalString(i);

10진수 → 16진수 : toHexaString(int i)
     String hexa = Integer.toHexaString(i);

 

 

2진수, 8진수, 16진수 → 10진수 변환


parseInt(String s)


parseInt(String s, int radix) : radix - 변환할 진수

     int binary = Integer.parseInt("1010", 2); // 2진수로 변환

 

728x90