본문 바로가기
코딩테스트/프로그래머스

[월간 코드 챌린지 시즌1] 3진법 뒤집기

by 의정부핵꿀밤 2022. 9. 21.
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

댓글