[11005] 백준 문제풀이 - 진법 변환 2
https://www.acmicpc.net/problem/11005
문제
10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오.
10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 사용한다.
A: 10, B: 11, …, F: 15, …, Y: 34, Z: 35
입력
첫째 줄에 N과 B가 주어진다. (2 ≤ B ≤ 36) N은 10억보다 작거나 같은 자연수이다.
출력
첫째 줄에 10진법 수 N을 B진법으로 출력한다.
풀이
1 풀이 오답 : result의 값을 뒤집어주지않음 2 풀이 오답 : result의 출력형태가 리스트로 출력됨 3 풀이 정답 : 두 개의 오답 수정
1
2
3
4
5
6
7
8
9
10
11
12
13
base = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
N, B = map(int, input().split(" "))
result = []
if N == 0:
result.append(0)
while N > 0:
result.append(base[N % B])
N //= B
result = "".join(result)
print(result[::-1])
댓글남기기