반응형
문제분석:
일정한 숫자 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 |
반응형
'알고리즘 > 프로그래머스 Level1' 카테고리의 다른 글
[프로그래머스,자바]Level 1 :약수의 개수와 덧셈 (0) | 2021.08.12 |
---|---|
[프로그래머스,자바] Level1: 키패드 누르기 (0) | 2021.08.10 |
[프로그래머스,Java] Level1: 위클리챌린지 2주차 (0) | 2021.08.09 |
[프로그래머스,Java] Level1: 숫자 문자열과 영단어 (0) | 2021.08.07 |
[프로그래머스,Java] Level1: 내적 (0) | 2021.08.07 |