반응형
https://school.programmers.co.kr/learn/courses/30/lessons/12899
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr

풀이
문제를 보자마자 몫과 나머지를 이용하는 문제라는 걸 파악했지만 생각보다 오래 걸렸음. 이유는 기본적인 3진법과의 차이가 있다는 점.
기본적인 3진법: 0, 1, 2, 10, 11, 12
124나라의 3진법: 1, 2, 4, 11, 12, 14
차이점은 "일의 자리에 1, 2, 4 모든 숫자가 올 수 있다." 그렇기 때문에 나머지가 0으로 떨어지는 경우 숫자에서 -1을 해주어야한다.
class Solution { public String solution(int n) { String answer = ""; while (n > 0) { int reminder = n % 3; if (reminder == 0) answer = "4" + answer; else if (reminder == 1) answer = "1" + answer; else answer = "2" + answer; // 모두 1의 자리에 들어올 수 있기 때문에 나머지가 0으로 떨어지는 경우 -1 if (reminder == 0) n--; n = n / 3; } return answer; } }
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스]JAVA - Level1. 신규 아이디 추천 (0) | 2022.08.23 |
---|---|
[프로그래머스]JAVA - Level2. 두 큐 합 같게 만들기 (0) | 2022.08.22 |
[프로그래머스]JAVA - Level3. N으로 표현 (0) | 2022.07.09 |
[프로그래머스]JAVA - Level3. 입국심사 (0) | 2022.07.05 |
[프로그래머스]JAVA - Level 2. 뉴스 클러스터링 (0) | 2022.06.29 |