Convert between balanced bases!
Mathematica, 85 bytes
#~FromDigits~#2~IntegerDigits~#3//.{p___,a_:0,b_,q___}/;b&gt;⌊#3/2⌋:&gt;{p,a+1,b-#3,q}&amp;

Explanation
#~FromDigits~#2

Convert #1 (1 is implied--input 1, a list of digits) into an integer base #2 (input 2).
... ~IntegerDigits~#3

Convert the resulting integer into base #3 (input 3), creating a list of digits.
... //.{p___,a_:0,b_,q___}/;b&gt;⌊#3/2⌋:&gt;{p,a+1,b-#3,q}

Repeatedly replace the list of digits; if a digit is greater than floor(#3/2), then subtract #3 from it and add 1 to the digit to the left. If there is nothing on the left, insert a 0 and add 1.