코딩테스트 연습 - 3진법 뒤집기 | 프로그래머스 스쿨 (programmers.co.kr)
초기 코드
class Solution {
fun solution(n: Int): Int {
var answer: Int = 0
return answer
}
}
우선 진법이란,
위치값 기수법이라는 수의 표현법이다. 예를들어 우리가 보통 사용하는 10진법은 0~9까지 표현하고 9를 초과하는 정수가 나오면 10으로 자리를 하나 올려서 표현한다.
10진법으로 예시를 들어보자.
1234는 1000+200+30+4로 볼 수 있고 이를 Z = a(n) x^n + a(n-1) x^n-1 +...+a(1) x(1) + a(0) x(0) 으로 표현 할 수 있다고 한다. x는 2진법, 3진법...등의 진법을 나타낸다.
근데 여기서 어떻게 나타내야 할지도 감을 찾지 못해서 결국 구글링을 해서 찾아보았다...
class Solution {
fun solution(n: Int): Int {
return n.toString(3).reversed().toInt(3)
}
}
어라 왜이리 짧지...?nomad diary라는 블로그에서 찾아볼 수 있었다.
일단 오늘 따로 코틀린 문법이나 기초 책을 찾아서 주문했다...3이란 단어로 묶어서 뒤집고 다시 3으로 나타내기? 내가 이해한것이 맞는지도 모호해서 설명이나 기초를 찾을 수 있는 책이 오면 예전 문제들도 확인해봐야겠다.
'알고리즘' 카테고리의 다른 글
프로그래머스 - 짝수의 합 (0) | 2023.11.29 |
---|---|
알고리즘 문제풀이 - 각도기 (0) | 2023.11.28 |
알고리즘 문제풀이 1~7 (1) | 2023.11.27 |
프로그래머스 - 이상한 문자 만들기 (0) | 2023.11.22 |
프로그래머스-최대공약수와 최소공배수 (0) | 2023.11.20 |