[124나라의 숫자] https://programmers.co.kr/learn/courses/30/lessons/12899
풀고 느낀점
내 머리로 풀 수 없는 문제였습니다. 한 2시간 고민하다가 구글링해서 풀이법을 봤습니다. Level 2 문제였는데 풀지 못하니 살짝 현타가 왔습니다. 3진법을 응용한 문제였습니다. 10진법의 값을 몫이 0일때까지 나누다가 나머지가 0인 경우 4로 대체하고 몫을 1만큼 빼주면 됩니다. 좀 더 내공을 쌓아야할 것 같습니다.
/**
* 124나라의 숫자
* https://programmers.co.kr/learn/courses/30/lessons/12899
*/
public class P_12899 {
public static void main(String[] args) {
P_12899 p_12899 = new P_12899();
System.out.println(p_12899.solution(1)); // 1
System.out.println(p_12899.solution(14)); // 112
System.out.println(p_12899.solution(10)); // 41
System.out.println(p_12899.solution(9)); // 24
}
public String solution(int n) {
StringBuilder answer = new StringBuilder();
while (n != 0) {
int r = n % 3;
n = n / 3;
if (r == 0) {
r = 4;
n -= 1;
}
answer.insert(0, r);
}
return answer.toString();
}
}
'Study with book > Algorithms' 카테고리의 다른 글
[프로그래머스] 행렬의 곱셈 (0) | 2021.06.07 |
---|---|
[프로그래머스] 더 맵게 (0) | 2021.04.12 |
[프로그래머스] 메뉴 리뉴얼 (0) | 2021.04.04 |
[프로그래머스] 베스트앨범 (0) | 2021.04.02 |
[2021 카카오 블라인드 온라인 코딩 테스트] 메뉴 리뉴얼 (0) | 2021.04.02 |