inblog logo
|
LHS's Study Space
    알고리즘문제풀기프로그래머스

    [프로그래머스] 마법의 엘리베이터(148653)

    lhs's avatar
    lhs
    Jan 02, 2025
    [프로그래머스] 마법의 엘리베이터(148653)
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리
    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/148653
     

    1. 문제 풀이 아이디어

    • 아래 자릿수부터 위로 올라가며 계산하는 방식으로 문제를 해결할 수 있다.

    2. 나의 정답 코드

    class Solution { public int solution(int storey) { int answer = 0; while (storey > 0) { int n = storey % 10; storey /= 10; if (n > 5 || (n == 5 && storey % 10 > 4)) { storey++; n = 10 - n; } answer += n; } return answer; } }

    3. 정리

    • 가장 아래 자릿수를 n으로 구하고, storey를 10으로 나누어 다음 자릿수로 이동한다.
    • n이 5보다 크거나, n이 5와 같으면서 다음 자릿수가 4보다 크면 storey를 1 증가시키고, n을 10 - n으로 계산한다.
    • 계산된 n을 결과값에 더한다.
    • 이 과정을 storey가 0이 될 때까지 반복하여 문제를 해결한다.
    Share article
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리

    LHS's Study Space

    RSS·Powered by Inblog