[Programmers]-124 나라의 숫자

문제

이번 프로그래머스 문제는 124나라의 숫자 입니다. 약간 3진법 변형문제인거 같다.

문제 풀이

n을 3으로 나눈 후 나머지가 1일경우 1을 answer에 추가한다. 나머지가 2일경우 2을 answer에 추가한다. 나머지가 0일경우 4을 answer에 추가한다.

하지만 나머지가 0일경우 n값에 -1을 해줘야 한다. 또 answer에 추가 할 때

 answer = answer + "1"; //또는
 answer += "1";

이런식으로 추가 하면 순서가 뒤바뀐다. 그러므로

answer = "1" + answer;

이렇게 앞쪽에 추가 해줘야 한다.

class Solution {
    public String solution(int n) {
        String answer = "";
        int remain = 0;//나머지
        
        while(n>0){
            remain = n%3;
            n /= 3;
            if(remain==1) answer = "1"+answer;
            if(remain==2) answer = "2"+answer;
            if(remain==0){
                n--;
                answer ="4"+answer;
            }
        }
        return answer;
    }
}


코드가 짧지만 생각을 해야하는 문제이다.