프로그래머스 : 이진수 더하기

Digeut·2023년 3월 3일
0

프로그래머스

목록 보기
11/164

❔문제설명

이진수를 의미하는 두 개의 문자열 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) {
        String answer = "";
        int binNum1 = Integer.parseInt(bin1,2);
        int binNum2 = Integer.parseInt(bin2,2); 
        //2진수 문자열 10진수 정수로 변환
        int sum = binNum1 + binNum2 ; //10진수 정수
        answer = Integer.toString(sum,2); //10진수 정수를 2진수 문자열로 변환
        return answer;
    }
}

Integer.pareseInt(String 문자열,n진수)
n진수 문자열 → 10진수 정수
Integer.toString(십진수 정수, 바꾸고자하는진수)
10진수 정수 → n진수 문자열

profile
백엔드 개발자 지망생

0개의 댓글