[LeetCode] 67. Add Binary

Chobby·2024년 9월 9일
1

LeetCode

목록 보기
103/194

단순히 파라미터로 입력받은 두 값을 더한 후 이진 문자열로 반환하면 되는 문제이다.

다만 값이 매우 크기 때문에 parseInt를 통해서는 정상적인 변환이 불가하다

javascript에선 0b문자를 이진 문자열 앞에 붙임으로써 정수가 아닌 2진수 임을 명시할 수 있다.

실제로 Number('0b1010')은 정수 10을 반환한다.

하여 2진수로의 덧셈을 BigInt 자료형으로 실행한 후 이진 문자열로 반환하면 끝

😎풀이

function addBinary(a: string, b: string): string {
    // 두 이진 문자열을 BigInt로 직접 변환하여 합산
    const aNum = BigInt("0b" + a)
    const bNum = BigInt("0b" + b)
    const sum = aNum + bNum
    return sum.toString(2) // 결과를 이진 문자열로 반환
}
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글