Leetcode(67)--バイナリ加算
730 ワード
2つのバイナリ文字列を指定し、それらの和(バイナリで表される)を返します.
空白以外の文字列として入力され、数字
pythonの内蔵関数,int()とbin()を用いて,直接答えを得ることができる.しかし、個人的にはこの方法をお勧めするわけではありません.簡単ですが、トレーニングの目的を果たしていません.もともとこの問題を記録したくない.
ここにも2つの大まかな考えがあります.
1、10進数加算に変換後、2進数に変換
2、進位の考え方をそのまま利用すると、間違いなくこの方法は簡単になります(min(len(a)、len(b)を計算して、それから小さい文字を限界として循環すれば、実現できるはずです)
空白以外の文字列として入力され、数字
1
および0
のみが含まれます. : a = "11", b = "1"
: "100"
: a = "1010", b = "1011"
: "10101"
pythonの内蔵関数,int()とbin()を用いて,直接答えを得ることができる.しかし、個人的にはこの方法をお勧めするわけではありません.簡単ですが、トレーニングの目的を果たしていません.もともとこの問題を記録したくない.
class Solution:
def addBinary(self, a, b):
"""
:type a: str
:type b: str
:rtype: str
"""
return bin(int(a,2)+int(b,2))[2:]
ここにも2つの大まかな考えがあります.
1、10進数加算に変換後、2進数に変換
2、進位の考え方をそのまま利用すると、間違いなくこの方法は簡単になります(min(len(a)、len(b)を計算して、それから小さい文字を限界として循環すれば、実現できるはずです)