[프로그래머스](lv.1) 3진법 뒤집기(java)

0

코딩테스트

목록 보기
13/37
post-thumbnail

<문제>

https://school.programmers.co.kr/learn/courses/30/lessons/68935

<나의 풀이>

import java.util.*;
class Solution {
    public int solution(int n) {
        int answer = 0;
        ArrayList<Integer> list = new ArrayList<>();
        while(n>0){
            list.add(n%3);
            n = n/3;
        }
        int sq = 1;
        for(int i = list.size()-1; i>=0; i--){
            answer+= list.get(i)*sq;
            sq = sq*3;
        }
        return answer;
    }
}

<다른 사람의 풀이>

class Solution {
    public int solution(int n) {
        String a = "";

        while(n > 0){
            a = (n % 3) + a;
            n /= 3;
        }
        a = new StringBuilder(a).reverse().toString();


        return Integer.parseInt(a,3);
    }
}

<핵심 개념>

ParseInt로 해서 String이랑 몇진법인지 넣어주면 바로 십진수로 변환이 가능하다!! 꿀팁 적어두고 나중에 써먹어야겠다.

profile
두둥탁 뉴비등장

0개의 댓글