점프와 순간 이동 - Python
2023. 10. 17. 20:28ㆍ공부/📝 프로그래머스
1. 풀이 코드
def solution(n):
ans = 0
while n != 0:
if n % 2 == 0:
n //= 2
else:
n -= 1
ans += 1
return ans
# Test Cases
print(solution(5) == 2)
print(solution(6) == 2)
print(solution(5000) == 5)
위와 같이 풀었습니다.
2. 다른 사람 풀이 코드
def solution(n):
return bin(n).count('1')
정말 멋있네요. 2를 곱하거나 나누는 행동은 비트시프트와 같다는 점을 기억해야겠습니다.
'공부 > 📝 프로그래머스' 카테고리의 다른 글
콜라 문제 - Python (0) | 2023.10.21 |
---|---|
예상 대진표 - Python (0) | 2023.10.18 |
푸드 파이트 대회 - Python (0) | 2023.10.17 |
K번째수 - Python (0) | 2023.10.17 |
[1차] 비밀지도 - Python (0) | 2023.10.17 |