문제링크
풀이
특징은 다음과 같다.
1. 3의 배수가 아닐 때
: 삼진법으로 바꾼 수와 동일하다. 따라서 삼진법으로 변환한 숫자를 구해주면 된다.
2. 3의 배수 일 때
: ( 3으로 나눈 몫 -1 ) 뒤에 4를 붙인 것이다.
def solution(n):
answer = ''
while n :
# 3의 배수일 때
if n % 3 == 0:
# 4 추가
answer += '4'
# 3으로 나눈 몫 - 1
n = n // 3 - 1
# 3의 배수가 아닐 때
else:
# 3으로 나눈 나머지
answer += str(n%3)
n //= 3
# 뒤집기
return answer[::-1]'개발 > algorithm' 카테고리의 다른 글
| [백준 2252번] 줄 세우기 - python (0) | 2022.04.16 |
|---|---|
| [프로그래머스][level2] [3차] 압축 - python (0) | 2022.04.15 |
| [프로그래머스][level2] [1차] 프렌즈4블록 - python (0) | 2022.04.14 |
| [프로그래머스][level2] 조이스틱 - python (0) | 2022.04.11 |
| [프로그래머스][level2] 방금그곡 - python (0) | 2022.04.11 |