124 나라의 숫자(프로그래머스)

정승옥(seungok)·2020년 12월 22일
0

프로그래머스

목록 보기
25/40
post-thumbnail

문제설명

  • 규칙
    1) 124나라에는 자연수만 존재
    2) 124나라에는 모든 수를 표현할 때 1,2,4만 사용

제한사항

  • n은 500,000,000이하의 자연수

풀이

function solution(n) {
    // 124나라 숫자를 담을 배열
    const answer = [];
    while(true){
        // 3으로 나누어 떨어지면 4, 아니면 나머지를 배열에 담음
        if(n%3===0)
            answer.unshift(4);
        else
            answer.unshift(n%3);
        // 몫이 0보다 클 경우
        // 3으로 나누어 떨어지면 몫-1, 아니면 몫을 리턴
        if(n/3 > 0){
            if(n%3==0){
                n = parseInt(n / 3) - 1;
            }else{
                n = parseInt(n / 3);
            }
        }
        // 몫이 0이면 반복문 종료
        if(n===0)
            break;
    }
    return answer.join('');
}

체크포인트

  • 10진법 수를 3으로 나누어 풀어서 진행
  • 경우
    1) 3의 배수인 경우 몫이 0인 경우(4), 0보다 큰 경우(n값이 3으로 나눈 몫 - 1이 되고 위 과정 반복)
    2) 아닌 경우 몫이 0인 경우(나머지), 0보다 큰 경우(n값이 3으로 나눈 몫이 되고 위 과정 반복 )
profile
Front-End Developer 😁

0개의 댓글