프로그래머스
[프로그래머스] 3진법 뒤집기
킴준현
2024. 9. 3. 23:57
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
📌 3진법 뒤집기
📌 내가 구현한 정답
class Solution {
public int solution(int n) {
String answer = Integer.toString(n, 3); // 3진수로 변환
String reversed = new StringBuilder(answer).reverse().toString(); // 문자열 뒤집기
return Integer.parseInt(reversed, 3); // 다시 10진수로 변환하여 반환
}
}
- Integer.toString(n, 3)을 사용하여 정수 n을 3진수 문자열로 변환한다.
- StringBuilder를 사용하여 문자열을 뒤집는다.
- Integer.parseInt(reversed, 3)을 사용하여 뒤집힌 3진수 문자열을 다시 10진수로 변환한 값을 반환한다.
📖✏️ TIL
Integer.toString과 Integer.parseInt는 Java에서 정수(int)와 문자열(String) 간의 변환을 처리하는 데 사용되는 메서드들이다. 이 두 메서드는 특히 진법 변환에서 자주 사용된다.
📌 Integer.toString(String s, int radix)
- 기능: 주어진 정수 n을 특정 진법(radix)의 문자열로 변환한다.
- 매개변수:
- n: 변환할 정수.
- radix: 변환할 진법(2부터 36까지 가능).
- 반환값: 정수 n을 radix 진법으로 표현한 문자열.
- 예시:
int n = 45;
String binaryString = Integer.toString(n, 2); // "45"를 2진수 문자열로 변환 ("101101")
String hexString = Integer.toString(n, 16); // "45"를 16진수 문자열로 변환 ("2d")
📌 Integer.parseInt(String s, int radix)
- 기능: 특정 진법(radix)의 문자열 s를 정수로 변환한다.
- 매개변수:
- s: 변환할 문자열. 이 문자열은 주어진 radix 진법에 따라 해석된다.
- radix: 문자열 s의 진법(2부터 36까지 가능).
- 반환값: 문자열 s를 radix 진법에서 해석한 정수.
- 예시:
String binaryString = "101101";
int n = Integer.parseInt(binaryString, 2); // 2진수 문자열 "101101"을 정수로 변환 (45)
String hexString = "2d";
int nHex = Integer.parseInt(hexString, 16); // 16진수 문자열 "2d"를 정수로 변환 (45)
🔑 참고
https://hianna.tistory.com/524