[programmers/py] 마법의 엘리베이터

승민·2024년 3월 24일

알고리즘

목록 보기
86/171

마법의 엘리베이터

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

문제 설명

  • 마법의 엘리베이터에는 -1, +1, -10, +10, -100, +100 등과 같이 절댓값이 10c (c ≥ 0 인 정수) 형태인 정수들이 적힌 버튼이 있습니다.
  • 단, 엘리베이터가 위치해 있는 층과 버튼의 값을 더한 결과가 0보다 작으면 엘리베이터는 움직이지 않습니다.
  • 민수와 마법의 엘리베이터가 있는 층을 나타내는 정수 storey 가 주어졌을 때, 0층으로 가기 위해 필요한 마법의 돌의 최소값을 return 하도록 solution 함수를 완성하세요.

문제 풀이

def solution(storey):
    answer = 0
    n = storey
    while n :
        r = n % 10
        if r > 5 :
            answer += (10-r)
            n += 10
        elif r < 5 :
            answer += r
        else : # 5
            if (n//10) % 10 > 4:
                n += 10
            answer += r
    
        n = n//10
    
    return answer

0개의 댓글