-
728x90
문제 설명
이진수를 의미하는 두 개의 문자열
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 타입의bin1
과bin2
를 2진수로 형변환해준다.형변환한 bin1과 bin2를 더해준 뒤
Integer.toBinaryString()
함수를 이용해 다시 10진수로 변환하는 로직.참고
Integer.parseInt(문자열 타입 숫자,[n진수])
: 문자열 타입의 숫자를 int 타입으로 변환하는 함수, n진수 입력시 해당 진수 타입으로 변환Integer.toBinaryString()
: 10진수를 2진수로 변환해주는 함수
728x90'algorithm' 카테고리의 다른 글
자바 알고리즘 - 등수 매기기 (0) 2023.09.07 자바 알고리즘 - 로그인 성공? (0) 2023.09.07 자바 알고리즘 - A로 B 만들기 (0) 2023.09.06 자바 알고리즘 - k의 개수 (0) 2023.09.06 자바 알고리즘 - 중복된 문자 제거 (0) 2023.09.05