본문 바로가기
공부 정리/프로그래머스

[프로그래머스] 자바 3진법 뒤집기

by 경적필패. 2022. 1. 14.
반응형

문제

자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.

제한사항

n은 1 이상 100,000,000 이하인 자연수입니다.


접근

핵심

1. 10진법 -> n진법 가는방식 이해하기

2. StringBuilder사용하기


코드

import java.util.*;

class Solution {
    public int solution(int n) {
        int answer = 0;
        String temp = "";
        StringBuilder sb = new StringBuilder();
        while(n/3 > 0){
            temp = n%3 + temp;
            n /= 3;            
        }
        temp = n + temp;
        sb.append(temp);
        sb.reverse();
        int mul = 1;
        for(int i=sb.length()-1; i>=0; i--){
            answer += (sb.charAt(i) -'0') * mul;
            mul *= 3;
        }
        return answer;
    }
}

주의

x

 

반응형

댓글