-
1680. Concatenation of Consecutive Binary NumbersProgramming/leetcode 2021. 1. 28. 09:09728x90
주어진 수를 2진수로 변환하면서 나오는 값들을 하나로 합쳐 다시 그 값을 10진수로 변환하는 문제
예를 들어, 3이면 아래 표와 같이 11101이 나오게 된다(1부터 3까지의 2진수를 하나로 합치는 것)
10진수 2진수 1 1 2 10 3 11 11101을 다시 10진수로 변환하면 27이 나온다.
파이썬에서 진법 문제를 다룰수 있는지를 보는 문제같다.
풀고나서 Discuss를 보니 신기한 방법으로 푼 애들도 있었다.
def concatenatedBinary(self, n: int) -> int: s = "" for i in range(1, n+1): s += format(i, 'b') s = '0b'+ s return int(s, 2) % (10 ** 9 + 7)
참고로 진버과 관련해서는 아래 블로그를 참고하였다.
www.daleseo.com/python-int-bases/
[파이썬] 2진수, 8진수, 16진수 다루기
Engineering Blog by Dale Seo
www.daleseo.com
'Programming > leetcode' 카테고리의 다른 글
42. Trapping Rain Water (0) 2021.02.01 1. Two Sum (0) 2021.01.28 23. Merge k Sorted Lists (0) 2021.01.26 1437. Check If All 1's Are at Least Length K Places Away (0) 2021.01.26 5. Longest Palindromic Substring (0) 2021.01.25