124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다.
예를 들어서 124 나라에서 사용하는 숫자는 다음과 같이 변환됩니다.

자연수 n이 매개변수로 주어질 때, n을 124 나라에서 사용하는 숫자로 바꾼 값을 return 하도록 solution 함수를 완성해 주세요.
n은 500,000,000이하의 자연수 입니다.
숫자가 너무 커서 일일이 다만들기에는 무리..
숫자가 3개뿐이니 3으로 나누고 나머지랑 몫 구하는 방식으로 하기
1%3 = 1
2%3 = 2
3%3 = 0 -> 124나라의 숫자에서는 4
3으로 나누면 나머지가 0,1,2 뿐!
3으로 계속 나눠서 나머지를 더해주는 방식
예외 : 3으로 나누다가 나머지가 0이면 4를 answer에 concat하고 1을 빼주기
했더니 시간초과남
=> 스트링 + 연산때문인것 같아서 Stringbuilder로 바꾸고 insert함수 써서 해결함
import java.util.*;
class Solution {
public String solution(int n) {
String answer = "";
while(n > 0){
int temp = n % 3;
n/=3;
if(temp == 0){
temp = 4;
n--;
}
answer = temp + answer;
}
return answer;
}
}
class Solution {
public String solution(int n) {
//String answer = "";
StringBuilder answer = new StringBuilder();
while(n > 0){
int temp = n % 3;
n/=3;
if(temp == 0){
temp = 4;
n--;
}
answer.insert(0,temp);
}
return answer.toString();
}
}