문제
https://www.acmicpc.net/problem/2745
https://www.acmicpc.net/problem/11005
풀이
- 진법 변환
n, b = input().split()
print(int(str(n), int(b)))
B진법 수 N을 10진법으로 바꿔 출력하기
: python 내장함수 int(문자열, 정수)를 활용해 n진수를 10진수로 변환할 수 있다.
- 진법 변환2
import string
n, b = map(int, input().split())
def convert(num, base):
number = string.digits + string.ascii_uppercase
q, r = divmod(num, base)
return convert(q, base) + number[r] if q else number[r]
print(convert(n, b))
10진법 수 N을 B진법으로 바꿔 출력하기
: 직접 함수를 구현해주어야 한다.
- string.digits = 0 ~ 9인 문자열
- string.ascii_uppercase = A ~ Z인 문자열
- // 연산자와 % 연산자를 각각 호출해 몫, 나머지를 동시에 구하는 divmod() 함수 사용
참고
- https://duwjdtn11.tistory.com/486
- https://www.daleseo.com/python-divmod/
- https://joyjangs.tistory.com/35
'Algorithms > 코테 문풀' 카테고리의 다른 글
[백준 14568번] 2017 연세대학교 프로그래밍 경시대회 (0) | 2023.09.14 |
---|---|
[백준 2156번] 포도주 시식 (0) | 2023.08.29 |
[백준 2941번] 크로아티아 알파벳 (0) | 2023.08.17 |
[백준 2869번] 달팽이는 올라가고 싶다.. (0) | 2023.08.17 |
[백준 9093번] 단어 뒤집기 (0) | 2023.08.13 |