33 lines
919 B
Python
33 lines
919 B
Python
class Solution:
|
|
def addBinary(self, a: str, b: str) -> str:
|
|
tmpa = a
|
|
tmpb = b
|
|
if len(a)>len(b):
|
|
a = tmpb
|
|
b = tmpa
|
|
while len(a) < len(b): a = '0' + a
|
|
print(a, b)
|
|
flag = 0
|
|
indb = len(b) - 1
|
|
rlt = ""
|
|
for inda in range(len(a)-1, -1, -1):
|
|
numa = int(a[inda])
|
|
numb = int(b[indb])
|
|
s = numa + numb + flag
|
|
print(s)
|
|
if s == 3:
|
|
rlt = '1' + rlt
|
|
flag = 1
|
|
if s == 2:
|
|
flag = 1
|
|
rlt = '0' + rlt
|
|
if s == 1:
|
|
flag = 0
|
|
rlt = '1' + rlt
|
|
if s == 0:
|
|
flag = 0
|
|
rlt = '0' + rlt
|
|
indb -= 1
|
|
print(f'rlt: {rlt}')
|
|
if flag == 1: rlt = '1' + rlt
|
|
return rlt |