πŸ—οΈ Algorithm/⬛ ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€

[Programmers] [Summer/Winter Coding(~2018)] [Python] Level2_점프와 μˆœκ°„μ΄λ™

Dbswnstjd 2022. 10. 13. 21:50

문제 

https://school.programmers.co.kr/learn/courses/30/lessons/12980

 

ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€

μ½”λ“œ μ€‘μ‹¬μ˜ 개발자 μ±„μš©. μŠ€νƒ 기반의 ν¬μ§€μ…˜ 맀칭. ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€μ˜ 개발자 λ§žμΆ€ν˜• ν”„λ‘œν•„μ„ λ“±λ‘ν•˜κ³ , λ‚˜μ™€ 기술 ꢁ합이 잘 λ§žλŠ” 기업듀을 맀칭 λ°›μœΌμ„Έμš”.

programmers.co.kr

풀이

# ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ 2단계 - Summer/Winter Coding(~2018) - 점프와 μˆœκ°„μ΄λ™ 
def solution(n):
    ans = 0
    while True:
        if n % 2 != 0:
            n -= 1
            ans += 1
        n = n // 2
        if n == 0:
            return ans

2둜 λ‚˜λˆ„μ–΄ 떨어지면 계속 μˆœκ°„μ΄λ™μ΄ κ°€λŠ₯ν•˜λ―€λ‘œ 짝수일 경우 μˆœκ°„μ΄λ™μ„ ν•˜κ³  n이 ν™€μˆ˜μΌ 경우 ν•œμΉΈ μ•žμœΌλ‘œ κ°„λ‹€. 

μ²˜μŒμ— μƒκ°ν• λ•Œ 0 λΆ€ν„° μ‹œμž‘ν•΄μ„œ μ˜¬λΌκ°”λŠ”λ°

nλΆ€ν„° 0으둜 λ‚΄λ €μ˜€λŠ”λ° κ·œμΉ™μ„ λ°œκ²¬ν•΄μ„œ 쑰금 ν—€λ©”μ—ˆλ˜ 것 κ°™λ‹€.