일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- 백준
- SSAFYcial
- it 뉴스
- 네트워크 관리사 2급
- java 객체지향 프로그래밍
- 네트워크 관리사
- Java
- 코딩테스트 연습
- 프로그래머스
- IT 동향
- 백준위
- 네트워크 관리사 2급 실기
- 인앱결제
- 카카오
- IT 트렌드
- 싸피
- 코테
- 구글
- SSAFY
- 싸피셜
- it 이슈
- SSAFY 7기
- 리얼클래스
- python
- KT
- 코딩테스트
- 신문스크랩
- 우테코
- 신문 스크랩
- html
Archives
- Today
- Total
개발자일걸요..?
3진법 뒤집기 본문
728x90
반응형
링크 : https://programmers.co.kr/learn/courses/30/lessons/68935
코딩테스트 연습 - 3진법 뒤집기
자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수
programmers.co.kr
(프로그래머스 > 코딩테스트 연습 > 월간 코드 챌린지 시즌1 > 3진법 뒤집기(level1))
<문제>
자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.
<내가 작성한 코드 1>
def solution(n):
#3진법으로 바꾸기
temp =[]
while(n!=0):
temp.insert(0,n%3)
n=n//3
#3진법 뒤집기 -> 10진법으로 변환
temp.reverse()
t =""
for item in temp:
t += str(item)
answer = int(t,3)
return answer
<내가 작성한 코드 2(과정 미중시, 결과값만 나오면 되는 경우)>
def solution(n):
t=""
while(n!=0):
t+=str(n%3)
n=n//3
return int(t,3)
<참고한 개념>
int()함수
- int(x) : 문자열 혹은 실수형인 인자 x를 정수형으로 반환한다.
- int(x,base) : base진수인 x(문자형)를 10진수로 변환하여 결과값을 return 한다. ex) int('0021',3) = 7
진법 변환
주어진 수 x를 base로 나누어 나머지는 변환하는 진법배열에 삽입, 몫은 x로 대입을 반복하여 몫이 0이 될때 종료
반응형
Comments