문제📖
풀이🙏
- 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))