LeetCode/Top Interview 150

67. Add Binary

hyunkookim 2024. 12. 17. 18:13

67. Add Binary

 

https://youtu.be/keuWJ47xG8g?si=9FQTur6Jph3SV28p

 

class Solution:
    def addBinary(self, a: str, b: str) -> str:
        res = ""
        carry = 0

        a, b = a[::-1], b[::-1]

        for i in range(max(len(a), len(b))):
            digitA = int(a[i]) if i < len(a) else 0
            digitB = int(b[i]) if i < len(b) else 0

            sumAB = digitA + digitB + carry
            carry = sumAB // 2
            res += str(sumAB % 2)

        if carry: # carry == 1
            res += str(carry)

        return res[::-1]