코딩테스트/프로그래머스
[월간 코드 챌린지 시즌1] 3진법 뒤집기
의정부핵꿀밤
2022. 9. 21. 20:27
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/68935
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
여기서는 어려운 문제는 아니었으나 Integer.parseInt 메소드를 알게 되었다!
우선 3진법으로 바꾸고 뒤집는 과정이 있어야 하는데 진법 변환 특성 상 이는 쉽게 구현이 가능하다
보통 진법 변환 시 나누기를 진행하고 그 나머지들을 아래서부터 쓰는데
이를 그냥 반복문을 돌리고 그 때마다 나오는 나머지를 String 뒤로 쭉쭉 붙여주면 알아서 뒤집혀져 있는 것이다!
그리고 Integer.parseInt() 함수에서는 String 문자열을 원하는 진법으로 바꿔주는 기능이 있다
💡 Integer.parseInt(String s, int radix)
- 숫자형의 문자열을 첫번째 인자값(String s)으로 받고 변환할 진수값(int radix)을 입력하면 해당 진수에 맞춰서 Integer 형으로 변환한다
- 기존의 Integer.parseInt(String s)는 사실상 Integer.parseInt(String, 10) 인 것이다
아래는 코드!
자바 코드)
class Solution {
public int solution(int n) {
String str = "";
while(n>0) {
str += (n%3);
n/=3;
}
return Integer.parseInt(str, 3);
}
}
728x90