프로그래머스 - 124나라

문제

풀이 과정

  1. 3으로 나누었을때 규칙이 발생
    (1,2,4,11,12,14...)
  2. 3의n승 형태로 구조를 가지게 됨.
    (1자리수 3개, 2자리수 9개, 3자리수 27개 ...)
  3. 3으로 나누어서 나누어 떨어지면 temp/3-1
    3으로 나누어서 1이 남으면 Math.floor(temp/3);
    3으로 나누어서 2가 남으면 Math.floor(temp/3);
  4. while 문으로 temp가 0이하가 될때까지 실행

코드

function solution(n) {
 let answer = '';
 let temp = n;

  while(temp > 0) {
     if(temp%3 === 0){
       answer = '4' + answer;
       temp = temp/3 -1;
     }else if(temp%3 === 1){
       answer = '1' + answer;
       temp = Math.floor(temp/3);
     }else if(temp%3 === 2){
       answer = '2'+ answer;
       temp = Math.floor(temp/3);
     } 
   }

   return answer;
}

좋은 웹페이지 즐겨찾기