본문 바로가기
프로그래머스 C++

프로그래머스 마법의 엘리베이터 C++

by Srff5123 2025. 1. 22.
728x90

 

 

마법의 세계에 사는 민수는 아주 높은 탑에 살고있는데

탑이 너무 높아 마법의 엘리베이터를 만들었다.

해당 엘리베이터는 -1, +1, -10, +10 -100... 10의 제곱의 절대값 범위 버튼만 있다

버튼을 누를때는 마법의 돌을 소모해야하고

현재 층 수에 버튼을 더한 값이 0보다 작으면 움직이지 않는다.

민수가 현재 있는 층이 storey int형 매개변수로 주어졌을때

0층으로 가기 위해 필요한 최소의 마법의 돌 개수를 리턴하는 문제

 

현재 자릿수를 검사하여 5 이상이거나,  5와같고 다음 자릿수가 5이상이면 올라가는 쪽이 돌을 최소로 사용할 수있고,

반대의 경우는 아래로 내려가는것이 최소로 사용하는 방법이다.

 

storey의 값을 나누어준 몫이 현재 자릿수이고

10으로 나눈다음 10의 몫으로 계산하면 다음 자릿수를 구할 수 있다.

728x90