[프로그래머스] 이진수 더하기 - JAVA

2023. 3. 6. 23:57프로그래머스 - JAVA

문제

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


조건

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


코드

class Solution {
    public String solution(String bin1, String bin2) {
        return Integer.toBinaryString(Integer.parseInt(bin1,2) + Integer.parseInt(bin2,2));
    }
}

Integer.parseInt() 는 보통 String -> int 형으로 바꿔주는 역할을 하는데,

Integer.parseInt(bin1,2) 변수 뒤에 숫자를 넣으면 x진수로 바꿔준다. 여기서는 2를 넣어서 bin2의 값을 2진수로 바꿔준 것이다.

Integer.parseInt(bin1,2) -> Integer.parseInt(변수,진수) 

2진수를 더한 후 Integer.toBinaryString를 이용해 다시 10진수로 변환한다.

 

 

 

 

 

출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges