문제
풀이 과정
- 3으로 나누었을때 규칙이 발생
(1,2,4,11,12,14...)
- 3의n승 형태로 구조를 가지게 됨.
(1자리수 3개, 2자리수 9개, 3자리수 27개 ...)
- 3으로 나누어서 나누어 떨어지면 temp/3-1
3으로 나누어서 1이 남으면 Math.floor(temp/3);
3으로 나누어서 2가 남으면 Math.floor(temp/3);
- 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;
}