https://www.acmicpc.net/problem/2745
첫 줄 입력 N, B
B진법 수 N을 10진법으로 바꾸면 항상 10억보다 작거나 같다
B진법 숫자 N을 10진법으로 바꿔 출력하라.
# import math #math 모듈을 먼저 import해야 한다.
# math.ceil(3.14) #결과는 4
# math.floor(3.14) #결과는 3
# round(3.1415) #결과는 3
#형태
# - 문자열.split()
# - 문자열.split('구분자')
# - 문자열.split('구분자',분할횟수)
# - 문자열.split(sep='구분자',maxsplit=분할횟수)
#배열 생성
# bList = [0 for i in range(n)]
#입력
# num_list = list(map(int, input().split()))
# n, m = map(int, input().split())
# 형변환
# d = int('1')
#리스트 슬라이싱
# [:] 처음부터 끝까지
# [start:] start오프셋(인덱스)부터 끝까지
# [:end] 처음부터 end-1 오프셋(인덱스)까지
# [start : end] start오프셋부터 end-1 오프셋(인덱스)까지
# [start : end : step] step만큼 문자를 건너뛰고, 위와 동일추출
#for i in range(a, b, c)에서 b는 포함되지 않는다.(a이상 b미만)
##################################################
# N, M = map(int, input().split())
# bList = [i+1 for i in range(N)]
# for a in range(M):
# i, j = map(int, input().split())
# temp = bList[i - 1]
# bList[i - 1] = bList[j - 1]
# bList[j - 1] = temp
# for i in range(N):
# print(bList[i], end=' ')
##################################################
#여러줄 입력받기
# import sys
# while True:
# try:
# a, b = map(int, sys.stdin.readline().split())
# print(a + b)
# except:
# break
###################################################
############## 풀이 ################################
N, B = input().split()
B = int(B)
sum = 0
j = 1
for i in N[::-1]:
if (ord('A') <= ord(i) and ord(i) <= ord('Z')):
k = 10 + (ord(i) - ord('A'))
else:
k = int(i)
sum += k * j #순서 잘 생각해라.
j *= B
print(sum)
# GPT
# N, B = input().split()
# B = int(B)
# sum = 0
# j = 1
# for i in N[::-1]:
# if ('A' <= i <= 'Z'):
# k = 10 + (ord(i) - ord('A'))
# else:
# k = int(i)
# sum += k * j
# j *= B
# print(sum)
# GPT
# N, B = input().split()
# B = int(B)
# sum = 0
# j = 1
# for i in N[::-1]:
# if ('A' <= i <= 'Z'):
# k = ord(i) - ord('A') + 10 # A부터 Z까지 10부터 35까지 인코딩
# else:
# k = int(i)
# sum += k * j
# j *= B
# print(sum)
'공부 > 백준' 카테고리의 다른 글
BOJ 10798번 (단계별) (0) | 2023.04.06 |
---|---|
BOJ 25206번 (단계별) (0) | 2023.04.06 |
BOJ 10988번 (단계별) (0) | 2023.04.06 |
BOJ 10812번 (단계별) (0) | 2023.04.06 |
BOJ 27866번 (단계별) (0) | 2023.04.06 |