이 문제는 문자열로 된 두 이진법의 수를 더한 다음 다시 이진법으로 바꾸어 반환하는 프로그램을 짜야한다.
문제 풀이
파이썬에서 이진법을 다루는 방법은 다음과 같다. 이를 활용해서 문제를 풀면 쉽게 문제를 풀 수 있다.
1
2
3
4
5
6
7
8
9
10
11
12
|
<이진법의 문자열을 십진법으로 바꾸는 방법>
int("1010", 2) # 10
int("0110", 2) # 6
<십진법의 수를 이진법으로 바꾸는 방법>
format(3, 'b') # '11'
format(6, 'b') # '110"
|
cs |
파이썬 코드
1
2
3
4
5
6
7
8
9
|
class Solution:
def addBinary(self, a: str, b: str) -> str:
"""
Runtime : faster than 94.74% of Python3
Memory Usage : less than 5.43% of Python3
"""
return format(int(a, 2) + int(b, 2),'b')
|
cs |
'온라인 코딩 테스트 문제 풀이 > LeetCode 문제 풀이' 카테고리의 다른 글
Python으로 푸는 LeetCode 832. Flipping an Image (Easy) (0) | 2019.04.18 |
---|---|
Python으로 푸는 LeetCode 657. Robot Return to Origin (Easy) (0) | 2019.04.16 |
Python으로 푸는 LeetCode. 58. Length of Last Word (Easy) (0) | 2019.04.11 |
Python으로 푸는 LeetCode 55. Jump Game (Medium) (0) | 2019.04.10 |