bin3 [LeetCode] Number Complement 파이썬 (format, bitwise) format() 함수를 사용해서 진법을 출력할때 앞의 str를 제거하고 출력할 수 있다. Format Specification Mini-Language 이런식으로 출력된다. print(format(num, 'b')) print(bin(num)) class Solution: def findComplement(self, num: int) -> int: com_bi = [str(abs(int(x)-1)) for x in str(format(num, 'b'))] return com_bi abs(int(x) - 1) 을 해줌으로써 1 -> 0 , 0 -> 1로 swap 해준다. 2021. 4. 19. [LeetCode] Add Binary 파이썬 (int, bin) 파이썬 내장 int, bin을 사용하면 10 to 2, 2 to 10이 가능 단 bin으로 했을 경우 0b100 이런식으로 str으로 return이 되기 때문에 slicing 필요 36ms class Solution: def addBinary(self, a: str, b: str) -> str: ans = int(a,base=2)+int(b,base=2) ans = bin(ans)[2:] return ans 한줄로는 그냥 이렇게 32ms 4ms 단축 return bin(int(a,2)+int(b,2))[2:] 2021. 3. 30. [프로그래머스] 다음 큰 숫자 def solution(num): b_num = bin(num) b_num_1 = b_num.count("1") new_num = num+1 while True: b_new_num = bin(new_num) new_num_1 = b_new_num.count("1") if b_num_1 == new_num_1: break new_num += 1 return new_num 지저분하지만 맞긴했따. def solution(num): new_num = num+1 while True: if bin(num).count("1") == bin(new_num).count("1"): break new_num += 1 return new_num 깔끔하게 2021. 3. 15. 이전 1 다음