class Solution {
public int solution(int n) {
int answer = 0;
String temp="";
while(n/3>=1) {
temp += n%3;
n /= 3;
}
temp += n;
answer = Integer.parseInt(temp,3);
return answer;
}
}
10진수에서 3진수로 나눗셈연산과 나머지연산을 이용해 구하다가, n진수에서 10진수로 변환해주는 메서드가 생각나서 찾아보고 그렇게 진행했다.
그러다 문득 10진수에서 3진수도 메소드를 이용해 바꿀 수 있지않을까싶어 찾아봤다.
class Solution {
public int solution(int n) {
int answer = 0;
String temp= Integer.toString(n,3);
StringBuffer sb = new StringBuffer(temp);
temp = sb.reverse().toString();
answer = Integer.parseInt(temp,3);
return answer;
}
}
10진수를 제외한 나머지 진수는 String으로 받아야 하기때문에, Integer.toString(n,진수)을 이용해서 진행할 수 있다.
그리고 이를 뒤집기위해서는 StringBuffer을 이용해야한다.