输入有多组数据。
每组数据包含两个正整数n (1≤n≤2147483647)和r (2≤n≤16)。
对应每一组数据,输出十进制正整数n转换成r进制后的数位和,并用r进制输出结果。
123456 10<br/>123456 2
21<br/>110
def jinzhi(num,n): s='0123456789ABCDEFG' out='' while num: out=s[num%n]+out num=num//n return out while True: try: s='0123456789ABCDEFG' x=list(map(int,input().split())) num=x[0] n=x[1] result=jinzhi(num,n) he=0 for i in result: he+=int(s.find(i)) print(jinzhi(he,n)) except: break
def baseN(num, b):
return ((num == 0) and "0") or (baseN(num // b, b).lstrip("0") + "0123456789ABCDEFGHIGKLMNO"[num % b])
while True:
try:
a,b=map(int,input().split())
arr="0123456789ABCDEFGHIGKLMNO"
print(baseN(sum(map(lambda c:arr.index(c),list(baseN(a,b)))),b))
except:
break