[프로그래머스/파이썬] Level 1 3진법 뒤집기
https://programmers.co.kr/learn/courses/30/lessons/68935#
알고리즘 분류
- 구현
문제풀이
논리는 동일하지만 코드2가 훨씬 간단하다.
예를 들어, 45가 0이 될 때까지 나머지연산을 반복하면 0021이 된다.
이를 3진법 정수로 바꿔주면 정답이다.
소스코드
코드1(내가 푼 코드)
def solution(n):
array=[]
while (n//3)>0:
array.append(str(n%3))
n=n//3
array.append(str(n))
number=str(int("".join(array)))
if len(number)>1:
temp=3*int(number[0])+int(number[1])
else:
return int(number)
for i in range(2,len(number)):
result=3*temp+int(number[i])
temp=result
return temp
코드2(찾은 코드)
def solution(n):
temp=""
while n:
temp+=str(n%3)
n=n//3
return int(temp,3)
Author And Source
이 문제에 관하여([프로그래머스/파이썬] Level 1 3진법 뒤집기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@bye9/프로그래머스파이썬-Level-1-3진법-뒤집기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)