알고리즘/프로그래머스 Level1
[프로그래머스,자바] Level1 : 3진법 뒤집기
류창
2021. 8. 10. 21:44
반응형
문제분석:
일정한 숫자 n을 3진법을한뒤 앞뒤 바꾸고, 다시 10진법으로 바꾸는문제다.
문제풀이:
기본적으로 n진법을 만드는 테크닉을 알고있으면 편하다.
while문을 사용해 n진법을 만들고, 나오는 숫자들을 앞에서부터 채운다
이 과정에서 앞뒤반전은 생략할수가있다.
3진법 ->10진법으로 변환하기위해 3^i 만큼 더해준다.
그리고 answer리턴
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
class Solution {
public int solution(int n) {
int answer = 0;
String temp="";
while(n!=0){
temp=n%3+temp;
n/=3;
}
String[] st =temp.split("");
for(int i=0;i<st.length;i++){
answer+=Math.pow(3,i)*Integer.parseInt(st[i]);
}
return answer;
}
}
|
cs |
반응형