๋ฐ์ํ
[ํ๋ก๊ทธ๋๋จธ์ค] 3์ง๋ฒ ๋ค์ง๊ธฐ
https://programmers.co.kr/learn/courses/30/lessons/68935
๋ฌธ์ ์ค๋ช
์์ฐ์ n์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. n์ 3์ง๋ฒ ์์์ ์๋ค๋ก ๋ค์ง์ ํ, ์ด๋ฅผ ๋ค์ 10์ง๋ฒ์ผ๋ก ํํํ ์๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ
- n์ 1 ์ด์ 100,000,000 ์ดํ์ธ ์์ฐ์์ ๋๋ค.
Code
java
class Solution {
public int solution(int n) {
int answer = 0;
String tmp = "";
while(n>0){
int a = n%3;
tmp += a;
n=n/3;
}
for(int i=0; i<tmp.length(); i++){
answer += (tmp.charAt(i)-'0') * Math.pow(3,tmp.length()-1-i);
}
return answer;
}
}
Code ์ค๋ช
10์ง์์ธ n์ 3์ง๋ฒ์ผ๋ก ๋ฐ๊พธ๋๋ฐ ์ฒ์๋ถํฐ ์๋ค ๋ฐ์ ์ธ 3์ง๋ฒ์ผ๋ก ๋ฐ๊พผ๋ค.
10์ง์ A๋ฅผ N์ง๋ฒ์ผ๋ก ๋ฐ๊ฟ ๋ ๋ฐฉ์์ A๋ฅผ N์ผ๋ก ๋์ด์ ๋๋์ ์์๋ ๋๋๋ฉด์ ๋๋จธ์ง๋ค์ ๋ง์ง๋ง ๋๋จธ์ง๋ถํฐ ์ฐ๋ฉด ๋๋๋ฐ, ์ฒ์ ๋๋จธ์ง ๋ถํฐ tmp์ ๋ฃ์์ผ๋ก์จ ์๋ค ๋ฐ์ ์ธ 3์ง๋ฒ์ ๋ฐ์ ์ ์๋ค.
๊ทธ๋ฆฌ๊ณ ์ด 3์ง๋ฒ์ 10์ง๋ฒ์ผ๋ก ๋ค์ ๋ฐ๊ฟ ์ฃผ์๋ค.
๋ฐฐ์ด์
- ๊ฑฐ๋ญ์ ๊ณฑ ํจ์ ์ฌ์ฉํ๊ธฐ
Math.pow(n,a)๋ฅผ ์ฌ์ฉํ๊ฒ๋๋ฉด n์ a์ ๊ณฑ์ Doubleํ์ผ๋ก ๋ฐํํด์ค๋ค. - String ์ธ๋ฑ์ค ์ ๊ทผ
str.charAt(i)๋ฅผ ์ฌ์ฉํ๊ฒ๋๋ฉด str์ i๋ฒ์งธ ์ธ๋ฑ์ค ๊ฐ์ char๋ก ๋ฐํํด์ฃผ์ด์ ์ ๊ทผํ ์ ์๋ค.
๋ฐ์ํ
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Algorithm/Java][ํ๋ก๊ทธ๋๋จธ์ค] ๋ฌธ์์ด ๋ด ๋ง์๋๋ก ์ ๋ ฌํ๊ธฐ (0) | 2022.01.11 |
---|---|
[Algorithm/Java][ํ๋ก๊ทธ๋๋จธ์ค] [1์ฐจ] ๋น๋ฐ์ง๋ (0) | 2021.10.02 |
[Algorithm/JAVA][ํ๋ก๊ทธ๋๋จธ์ค] ์คํจ์จ (0) | 2021.09.04 |
[Algorithm/Java][ํ๋ก๊ทธ๋๋จธ์ค] ์ง์ ๊ตฐ ์ถ์ฒํ๊ธฐ (0) | 2021.08.27 |
[Algoritm/Java][ํ๋ก๊ทธ๋๋จธ์ค] ์ ๊ท ์์ด๋ ์ถ์ฒ (0) | 2021.07.28 |