이진수 더하기 Lv. 0

박영준·2023년 6월 9일
0

코딩테스트

목록 보기
240/300
class Solution {
    public String solution(String bin1, String bin2) {
        String answer = "";
        return answer;
    }
}

해결법

방법 1

class Solution {
    public String solution(String bin1, String bin2) {
        String answer = "";
        
        // 2진수 → 10진수
        int num1 = Integer.parseInt(bin1, 2);
        int num2 = Integer.parseInt(bin2, 2);
        
        // 10진수의 합
        int sum = num1 + num2;
        
        // 10진수 → 2진수
        answer = Integer.toBinaryString(sum);
        
        return answer;
    }
}
  • 2진수 → 10진수

    • parseInt(String 문자열, int 진수) : 문자열 값을 10진수 int타입으로 반환
  • 10진수 → 2진수

    • Integer.toBinaryString

방법 2

class Solution {
    public String solution(String bin1, String bin2) {
        return Integer.toString(Integer.parseInt(bin1, 2) + Integer.parseInt(bin2, 2),2);
    }
}
  • Integer.toString
    • Integer.toBinaryString 대신에 toString 을 사용해도 무방

참고: 10진수 <-> 2진수 변환 / Integer.toBinaryString / Integer.parseInt


이진수 더하기 Lv. 0

profile
개발자로 거듭나기!

0개의 댓글