카타
<40. 3진법 뒤집기>
WHILE, INT 함수
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
python의 기초 문법을 정말 따로 많이 공부해야겠다고 생각하게 만든 문제. SQL 카타 기본 문제들이 풀이는 헷갈리더라도 기본 문법은 알고 있으니 어찌저찌 해결이 되는데, 파이썬은 확실히 아직 기본 문법이나 함수조차 모르는 경우가 넘 많은 것 같다. DS까지 생각하고 있는 상황이니...남은 기간 동안 부지런히 해야할 것 같음.
풀이 1
스텝1
def solution(n):
result = ''
while n > 0:
result += str(n%3)
n = n//3
return result
n을 나눈 나머지를 result에 할당
그 후 n을 나눈 몫을 n에 할당
위의 과정을 n이 0이 되기 전까지 반복
스텝2
def solution(n):
temp = ''
result = 0
while n > 0:
temp += str(n%3)
n = n//3
for i, digit in enumerate(reversed(temp)):
result += int(digit)*(3**i)
return result
풀이2 : int함수 활용
def solution(n):
tmp = ''
while n:
tmp += str(n % 3)
n = n // 3
answer = int(tmp, 3)
return answer
스텝1 : 풀이 1과 동일
스텝2 : int 함수 활용
int (a, n)
- a : 10진법으로 변환할 대상(문자열 or 숫자열)
- n : 해석할 n진법 방식
'TIL 통합 > Python' 카테고리의 다른 글
SPLIT(), JOIN(), ITERTOOLS패키지, COMBINATIONS() (0) | 2024.03.20 |
---|---|
파이썬 패키지 업로드하기 (0) | 2024.03.19 |
Prophet - 주가 예측 및 예상 수익률 출력 알고리즘 만들기, MAE값 및 그래프 출력 (3) | 2024.03.05 |
INPUT(), MAP(), SPLIT(), 정규표현식(\N) (0) | 2024.02.28 |
문자추출, 사칙연산(나눗셈) (0) | 2024.02.27 |