https://www.acmicpc.net/problem/2745
시간 1초, 메모리 128MB
input :
output :
조건 :
알파벳이 들어온 경우엔 ord(item) - 55 를 실행하자.
진법의 변환의 경우
2진수 일 때
2^3 2^2 2^1 2^0
8진수 일 때
8^3 8^2 8^1 8^0
B 즉 몇 진법인지에 따라 제곱을 하는 형식으로 커지게 된다.
그렇다면 ZZZZZ를 받았을 때.
36^4 36^3 36^2 36^1 36^0
으로 가게 되니까 숫자에다가 저걸 곱해주면 되는 것.
import sys
n, b = sys.stdin.readline().split()
b = int(b)
res = 0
for idx, item in enumerate(n):
try:
if int(item):
res += int(item) * b ** (len(n) - 1 - idx)
except:
res += (ord(item) - 55) * b ** (len(n) - 1 - idx)
print(res)