CodingTest/Java

Lv.1 : 3์ง„๋ฒ• ๋’ค์ง‘๊ธฐ

Soom_1n 2022. 9. 12. 22:27

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr


 


๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ์ž…๋ ฅ๋ฐ›์€ 10์ง„์ˆ˜ n์„ 3์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ํ•œ ๋’ค, ๋’ค์ง‘๊ณ  10์ง„๋ฒ•์œผ๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

class Solution {
    public int solution(int n) {
        int answer = 0;
        String str = "";

        while(n != 0){
            str += (n%3);
            n /= 3;
        }

        for(int i = str.length()-1; i >= 0; i--){
            answer += (str.charAt(i) - '0') * Math.pow(3,str.length() - i - 1);
        }

        return answer;
    }
}

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • while๋ฌธ์—์„œ n์„ 3์ง„๋ฒ•์œผ๋กœ ๋ณ€ํ™˜ํ•ด ๋ฌธ์ž์—ด str์— ์ €์žฅํ•œ๋‹ค.
  • ๋ฌธ์ž์—ด์„ ์—ญ์œผ๋กœ ์ง„ํ–‰ํ•˜๋ฉฐ 10์ง„๋ฒ•์œผ๋กœ ๊ณ„์‚ฐํ•œ๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ๊ฐ„๋‹จํžˆ ํ’€์ดํ–ˆ์ง€๋งŒ intํ˜•์—์„œ Stringํ˜•์œผ๋กœ ์˜ค๊ฐ€๋Š”๊ฒŒ ์กฐ๊ธˆ ํ—ท๊น”๋ ธ๋‹ค.
  • ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ๋’ค์ง‘๊ธฐ๋ฅผ ๋Œ€์‹ ํ–ˆ์ง€๋งŒ, ๋ฌธ์ž์—ด ๋’ค์ง‘๊ธฐ๋Š” StringBuilder๋‚˜ StringBuffer์—์„œ reverse()๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

728x90