[백준/파이썬] 2745번 진법 변환 풀이

업데이트:



문제 정보


풀이

문제

B진수 문자열 N을 10진수로 변환하는 문제입니다.

코드

n, b = input().split()
b = int(b)

d = {(str(i) if i < 10 else chr(55 + i)):i for i in range(36)}

s, t = 0, 1
for i in range(1,len(n)+1):
    s += d[n[-i]] * t
    t *= b
print(s)

설명

문자-값 매핑을 만든 뒤 오른쪽 자리부터 가중치 B^k를 곱해 누적하면 10진수 값을 구할 수 있습니다.



댓글남기기