码迷,mamicode.com
首页 > 其他好文 > 详细

#67 Add Binary

时间:2019-11-16 00:06:10      阅读:55      评论:0      收藏:0      [点我收藏+]

标签:==   amp   tput   put   res   add   ring   python   +=   

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"

Solution1:

class Solution:
    def addBinary(self, a: str, b: str) -> str:
        if len(a) >= len(b):
            l = a[::-1]
            s = b[::-1]
        else:
            l = b[::-1]
            s = a[::-1]
        result = ""
        up = False
        for i in range(len(l)):
            if i < len(s):
                if not up:
                    if int(l[i]) + int(s[i]) == 2:
                        result += "0"
                        up = True
                    else:
                        result += str(int(l[i]) + int(s[i]))
                else:
                    if int(l[i]) + int(s[i]) == 2:
                        result += "1"
                    elif int(l[i]) + int(s[i]) == 1:
                        result += "0"
                    else:
                        result += "1"
                        up = False
            else:
                if not up:
                    result += l[i]
                else:
                    if l[i] == "1":
                        result += "0"
                    else:
                        result += "1"
                        up = False
        if up:
            result += "1"
        return result[::-1]
                

#67 Add Binary

标签:==   amp   tput   put   res   add   ring   python   +=   

原文地址:https://www.cnblogs.com/mrdoghead/p/11870045.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!