honey_pot

[Python] 점프와 순간 이동 본문

문제 풀이

[Python] 점프와 순간 이동

_tera_ 2022. 9. 20. 14:03

https://school.programmers.co.kr/learn/courses/30/lessons/12980?language=python3


짝수와 홀수의 규칙만 찾으면 풀리는 문제였다

1
2
3
4
5
6
7
8
9
def solution(n):
    ans = 0
    while n > 0:
        if n %2 == 0:
            n /= 2
        else:
            n -= 1
            ans += 1
    return ans
cs

근데 문제 질문게시판에 https://school.programmers.co.kr/questions/13871 이 풀이 진짜 대단하다 어떻게 이런 생각을???

n이 1이 될때까지 2로 나누면서 안 나눠질때 1을 더하는 방식이니까 2진수로 계산해서 점프를 하는 순간 == 1 이라고 표현할 수 있음

1
2
def solution(n):
    return bin(n)[2:].count('1')
cs

 

 

'문제 풀이' 카테고리의 다른 글

[Python] 2개 이하로 다른 비트  (1) 2022.09.21
[Python] 양궁대회  (1) 2022.09.20
[Python] [3차] 압축  (0) 2022.09.20
[python] k진수에서 소수 개수 구하기  (0) 2022.09.18
[python] n진수 게임  (0) 2022.09.18
Comments