🍀 문제
자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.
입출력 예
n | result |
45 | 7 |
125 | 229 |
입출력 예 #1
- 답을 도출하는 과정은 다음과 같습니다.
n (10진법)n (3진법)앞뒤 반전(3진법)10진법으로 표현
45 | 1200 | 0021 | 7 |
- 따라서 7을 return 해야 합니다.
코딩테스트 연습 - 3진법 뒤집기 | 프로그래머스 (programmers.co.kr)
코딩테스트 연습 - 3진법 뒤집기
자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수
programmers.co.kr
😊 나의 코드
class Solution {
public int solution(int n) {
int answer = 0;
// 3진법 변환 & 앞뒤 반전
String num = "";
while (n > 0) {
num += n % 3;
n /= 3;
}
// 10진법으로 전환
int index = num.length()-1;
for(int i=0; i<num.length(); i++) {
answer += Character.getNumericValue(num.charAt(i))*Math.pow(3, index--);
}
return answer;
}
}
⭐ char 형을 숫자 형식으로 바꿀때 Character.getNumericValue(char형변수) 를 사용!
아니면 해당 문자의 아스키코드 숫자로 바뀌기 때문에...
⭐ 제곱 : Math.pos(제곱할 숫자, 지수);
'알고리즘 > 프로그래머스' 카테고리의 다른 글
프로그래머스 LV2. 뉴스 클러스터링 (자바) (0) | 2022.01.12 |
---|---|
프로그래머스 LV1. 비밀지도 (자바) (0) | 2022.01.11 |
프로그래머스 LV1. 나머지가 1이 되는 수 찾기 (자바) (0) | 2022.01.07 |
프로그래머스 LV2. 다리를 지나는 트럭 (자바) (0) | 2022.01.06 |
프로그래머스 LV2. n^2 배열 자르기 (자바) (0) | 2022.01.05 |
댓글