Code Kata
3진법 뒤집기(Java)
H.S-Backend
2024. 5. 31. 18:17
반응형
문제 설명
자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- n은 1 이상 100,000,000 이하인 자연수입니다.
3진법뒤집기
문제 이해를 못 해서 접근조차 못했다.
- 3진법 구하기 27 - 9 - 3 - 1 순으로 나열된다.
- 45는 3진법으로 1200 이였을 때
- 27*1 - 9*2 - 3*0 - 1* 0 = 27+18 = 45
- 그러면 String 타입의 str을 선언해서
- str += n%3 첫번째 0
- n/3 = 15
- 다시 반복해서
- str += n%3 두번째 0
- n/3 = 5
- 다시 또 반복해서
- str += n%3 세번째 2
- n/3 = 1
- 마지막 반복
- str += n%3 네번째 1
- n/3 = 0 이나오고
- str = 0021 이 됨으로 Integer.parseInt("0021", 3)은 "0021"을 3진법으로 해석하여
- 6+1 =7
- 10진법으로 변환하고 결과는 7이 된다.
반응형