[백준] 11576: Base Conversion (Python)

JiKwang Jeong·2021년 10월 26일
0
post-custom-banner

문제📖

풀이🙏

  • A진법 값의 인덱스를 알기 위해 arr 리스트에 0부터 29까지 저장한다.
  • 입력받은 data를 하나씩 조회하면서 arr.index(data[i]를 통해 인덱스를 알아내고 index * pow(A, i)를 통해 10진법으로 먼저 변환한다.
  • 변환한 값을 B진법으로 변환시키기 위해 s 리스트에 str(result%B)를 저장하고 result를 result//B로 초기화한다.
  • 마지막으로 s를 뒤집어서 출력한다.

코드💻

arr = []
for i in range(30):
    arr.append(i)

A, B = map(int, input().split())
m = int(input())
data = list(map(int,input().split()))
result = 0
data.reverse()
s = []
for i in range(len(data)):
    index = arr.index(data[i])
    result += index * pow(A, i)

while result:
    s.append(str(result%B))
    result //= B

s.reverse()
print(' '.join(s))
profile
기억보다 기록, 난리보다 정리
post-custom-banner

0개의 댓글