반응형
https://programmers.co.kr/learn/courses/30/lessons/77885?language=python3
코딩테스트 연습 - 2개 이하로 다른 비트
programmers.co.kr
내가 한 풀이
def solution(numbers):
answer = []
for number in numbers:
bin_number = list('0' + bin(number)[2:])
idx = ''.join(bin_number).rfind('0')
bin_number[idx] = '1'
#홀수일땐 idx의 다음 숫자를 0으로 바꿔준다.
if number%2!=0:
bin_number[idx+1]='0'
answer.append(int("".join(bin_number),2))
return answer
이 문제를 풀면서 내장함수 bin을 알게되었다.
bin(x)
정수를 "0b" 가 앞에 붙은 이진 문자열로 변환하는 함수이다.
'코테 공부' 카테고리의 다른 글
프로그래머스 마법의 엘리베이터 (python 풀이) (0) | 2023.01.02 |
---|---|
프로그래머스 등굣길 비트 (파이썬 풀이) (0) | 2021.12.07 |
프로그래머스 보석 쇼핑 (파이썬 풀이) (0) | 2021.12.01 |
프로그래머스 이중우선순위큐 (파이썬 풀이) (0) | 2021.11.30 |
프로그래머스 괄호 회전하기 (파이썬 풀이) (0) | 2021.11.28 |