문제설명
자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- n은 1 이상 100,000,000 이하인 자연수입니다.
입출력 예
입출력 예 #1
- 답을 도출하는 과정은 다음과 같습니다.
- 따라서 7을 return 해야 합니다.
입출력 예 #2
- 답을 도출하는 과정은 다음과 같습니다.
- 따라서 229를 return 해야 합니다.
소스코드&결과
class Solution {
public int solution(int n) {
int answer = 0;
// 10진수에서 3진수로 바꾸기 - Integer.toString(a,3)
String str = Integer.toString(n,3);
// 문자열 거꾸로 되집기 - String reverse = sb.reverse().toString();
String reverse = new StringBuilder(str).reverse().toString();
// 3진수에서 10진수로 바꾸기 - Integer.parseInt(a,3)
answer = Integer.valueOf(reverse, 3);
return answer;
}
}
코드 설명
// 10진수에서 3진수로 바꾸기 - Integer.toString(a,3)
String str = Integer.toString(n,3);
- 10진수에서 3진수로 바꿔주기 위해 Integer.toString(a,3)이라는 함수를 이용해 주었다.
- 이 함수는 a에 숫자를 넣으면 그 숫자를 3진법으로 바꿔주는 것이다.
// 문자열 거꾸로 되집기 - String reverse = sb.reverse().toString();
String reverse = new StringBuilder(str).reverse().toString();
- 그 다음 문자열을 거꾸로 뒤집어주기 위해 String reverse = sb.reverse().toString()함수를 이용해주었다.
// 3진수에서 10진수로 바꾸기 - Integer.parseInt(a,3)
answer = Integer.valueOf(reverse, 3);
- Integer.parseInt(a,3) 함수를 이용하여 3진수에서 10진수로 바뀌게 해주었다.
return answer;
- answer값을 리턴해주었다.
'Coding Test > 프로그래머스' 카테고리의 다른 글
[JavaScript] 두 수의 연산 값 비교하기 (0) | 2023.04.20 |
---|---|
[JavaScript] 배열 원소의 길이 (0) | 2023.04.19 |
[JAVA] 같은 숫자는 싫어 (0) | 2023.04.13 |
[JAVA] 최대공약수와 최소공배수 (0) | 2023.04.10 |
[JavaScript] 삼각형의 완성 조건 (1) (0) | 2023.04.09 |