[프로그래머스] Lv2. 124 나라의 숫자 -JavaScript

이상돈·2023년 3월 6일
0
post-thumbnail

문제분류 : 코팅테스트 연습

난이도 : Level 2

출처 : 프로그래머스 - 124 나라의 숫자

문제

제한사항

📌 내가 생각한 풀이

1,2,4이니까 3진법으로 생각하자! 0대신 4로 치환하여 생각해보자.

그리고 3진법에서 자리수가 올라가는것과, 124나라에서 자릿수가 올라가는 규칙을 찾아보자

function solution(n) {
    var answer = '';
    var numArr = ["4","1","2"];
    while(n >0){
        answer = numArr[n%3] + answer;
        //몫에서 1을 빼주는 이유는 3진법일경우엔 2다음에 자리수가 올라가지만,
        // 여기선 2다음에 나오는 숫자는 4인데, 배열의 첫번쨰 원소로 들어가있다.
        // 따라서 몫에서 1을 뺸 값을 넣어줘야한다.
        n = parseInt((n-1)/3);
    }

    return answer.toString()
    
    
}

📌 느낀점

n진법 쓸때는 항상, .toString(n)으로 표현했는데, 실제로 직접 구현하는 원리를 알아보니 신기하였다. 또한 단순 진법 구현이 아닌, 자리수 올라가는 응용버전을 보니 아직 부족함이 많다고 느꼈다.

profile
사람들의 더 나은 삶을 위한 개발자

0개의 댓글