풀이
class Solution {
public int solution(int n) {
int answer = 0;
String str = "";
String[] arr;
int num = 1;
while(n != 0){
int a = n%3; // 나머지 구하기
n /= 3; // n 교체
str += a; // 반전 값 추가
}
arr = str.split(""); // 배열에 넣기
// 10진법으로 표현
for(int i=arr.length-1; i>=0; i--){
int a = Integer.parseInt(arr[i]); // 각 자리수 변수에 담기
if(i == arr.length-1){ // 처음이면 그냥 값만 저장
answer += a;
}else{ // 처음이 아니면
num *= 3;
answer += (a*num); // 값 저장
}
}
return answer;
}
}
결과
'코딩 문제 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 코딩테스트 - Level1 - 같은 숫자는 싫어 (0) | 2021.02.26 |
---|---|
프로그래머스 - 코딩테스트 - Level1 - 가운데 글자 가져오기 (0) | 2021.02.26 |
프로그래머스 - 코딩테스트 - Level1 - 2016 (0) | 2021.02.26 |
프로그래머스 - 코딩테스트 - Level2 - 주식가격 (0) | 2021.02.22 |
프로그래머스 - 코딩테스트 - Level2 - 124 나라의 숫자 (0) | 2021.02.22 |