입력의 첫째 줄에 변환하기 전 주어지는 수의 진법 a와 변환할 진법 b가 주어지고 둘째 줄에 변환될 수의 자릿수의 개수 (코드의 n ), 셋째 줄에는 a 진법으로 표현된 n 자리의 수를 준다. 셋째 줄의 수를 진법 b로 변환하여 출력하는 문제이다.
주어진 진법 a의 수를 10진법의 수로 변환하고 그 수를 다시 진법 b로 변환하는 방법을 사용했다. 어떤 수와 진법 a가 주어졌을 때 그 수를 10진법으로 변환하려면 어떤 수의 가장 우측 자릿수부터 각 자리마다 해당하는 진법 a^0, a^1, a^2……을 곱하여 더해주면 된다. 예제 입력1과 같이 진법 a가 17이고 변환할 수가 2 16인 경우에는 (2 * 17^1) + (16 * 17^0) 를 수행해주면 된다. 이를 수행하기 위하여 13~17행에 변환할 어떤 수를 벡터로 입력받고 18~22행에 어떤 수의 마지막 자리부터 진법 a에 해당하는 수를 제곱한값을 곱하면서 더하여 값을 구해준다.
22행이 완료된다면 변수 sum에 진법 a로 표현된 수가 10진법으로 변환된 값이 저장된다. sum을 진법 b로 나눈 나머지를 계속 저장하면서 sum을 b로 나눠서 sum이 0이 아닐 때까지 수행한 뒤 sum을 b로 나눈 나머지 값을 뒤에서부터 출력해 주면 10진법으로 표현된 sum 값을 진법 b로 나타낸 것이 된다.