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

[Programmers] [2017 νŒμŠ€νƒ€μš΄] [Python] Level2_μ˜ˆμƒ λŒ€μ§„ν‘œ

Dbswnstjd 2022. 10. 13. 17:48

문제 

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

 

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

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

programmers.co.kr

풀이

# ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ 2단계 - 2017 νŒμŠ€νƒ€μš΄ - μ˜ˆμƒ λŒ€μ§„ν‘œ
def solution(n, a, b):
    answer = 0
    while a != b:
        answer += 1
        a, b = (a + 1) // 2, (b + 1) // 2
        # +1을 ν•œ λ’€ 2둜 λ‚˜λˆˆ λͺ«μ„ μ €μž₯ν•˜λŠ” μ΄μœ λŠ”
        # a, bκ°€ ν™€μˆ˜μ΄κ±΄ 짝수이건 1을 λ”ν•΄μ„œ λͺ«μœΌλ‘œ λ‚˜λˆ„λ©΄
        # λ‹€μŒ λΌμš΄λ“œμ˜ 번호λ₯Ό ꡬ할 수 있음
    return answer

κ·œμ§μ„ 찾으면 μ‰½κ²Œ ν•΄κ²°ν•  수 μžˆλŠ” λ¬Έμ œμ˜€λ‹€.