Given two binary strings, return their sum (also a binary string).
The input strings are both non-empty and contains only characters 1
or 0
.
Example 1:
Input: a = “11”, b = “1”
Output: “100”
Example 2:
Input: a = “1010”, b = “1011”
Output: “10101”
Solution
from typing import List
class Solution:
def addBinary(self, a: str, b: str) -> str:
return f"{int(a, 2) + int(b, 2):b}"
Test Cases
test = Solution()
answer = test.addBinary("11", "1")
assert answer == "100"
answer = test.addBinary("1010", "1011")
assert answer == "10101"
answer = test.addBinary("0", "0")
assert answer == "0"
answer = test.addBinary("1111", "1111")
assert answer == "11110"
print('All Passed!')
Big O Analysis
Space Complexity: O(1)
Time Complexity: O(1)